AlgoMooc
你已开通华为OD训练营权益,还差最后一步——完成入营激活(兑换课程 + 加飞书 + 登记服务群),即可解锁全部课程与专属服务。去激活 →
← 返回题库

P2605. 密码输入检测

简单通过率 34% · 提交 1,977 · 通过 682
字符串模拟

小慕正在开发一个密码输入系统,系统会接收用户输入的字符流 input,其中字符'= 8; 2. 密码至少包含 1 个大写字母; 3. 密码至少包含 1 个小写字母; 4. 密码至少包含 1 个数字; 5. 密码至少包含 1 个非字母非数字的特殊字符(即非空白字符)。 注意:空字符串经过后仍为空字符串,且用户输入的字符串中不包含'<'字符和空白字符。

提示:带虚线的词点一下有通俗解释。

输入描述

用一行字符串表示输入的用户数据,输入的字符串中'<'字符标识退格,用户输入的字符串不包含空白字符,例如:ABC

输出描述

输出经过程序处理后,输出的实际密码字符串,并输出改密码字符串是否满足密码安全要求。两者间由','分隔, 例如:ABc89%00,true

示例

示例 1

输入

ABC<c89%000<

输出

ABc89%00,true

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解
密码输入检测示例输入流: A B C < c 8 9 % 0 0 0 <ABC< (退格)c89%000< (退格)处理过程(栈模拟):遇到 < 则弹出栈顶字符,否则压入ABc89%00(空)最终密码: ABc89%00安全检查:长度8(≥8) ✓ 大写A ✓ 小写c ✓ 数字8,9,0,0 ✓ 特殊字符% ✓结果: ABc89%00,true
写完代码点「提交」,将对全部测试用例判题。

向老师提问

针对「密码输入检测」把疑问、代码和报错填清楚,老师收到后能更快、更准地回复你。