A7254. [GESP202512 三级] 密码强度
编程题
入门
知识点
题目描述
小杨是学校网络安全小组的成员,今天他的任务是设计一个“密码强度检测器”,帮助同学们检查自己的密码是否足够安全。一个安全的密码需要满足以下条件:
- 密码至少包含 $8$ 个字符(太短的密码容易被猜出来哦!)。
- 密码至少包含一个大写字母(A、B、C、...、Z 都可以)。
- 密码至少包含一个数字(0、1、2、3、...、9 都可以)。
例如:
- 密码
- 密码
- 密码
- 密码
- 密码至少包含 $8$ 个字符(太短的密码容易被猜出来哦!)。
- 密码至少包含一个大写字母(A、B、C、...、Z 都可以)。
- 密码至少包含一个数字(0、1、2、3、...、9 都可以)。
例如:
- 密码
PAs1s2an 是安全密码(有 $8$ 位、包含大写字母 P、A 和数字 1、2)。- 密码
ab1da3cd 不是安全密码(没有大写字母)。- 密码
Paabdbcd 不是安全密码(没有数字)。- 密码
Pa2 不是安全密码(只有 $3$ 位,太短了)。输入格式
第一行一个正整数 $T$,代表需要安全检测的密码组数。
对于每组密码,一行包含一个字符串,代表需要安全检测的密码。
对于每组密码,一行包含一个字符串,代表需要安全检测的密码。
输出格式
对于每组密码,输出一行,如果满足强度要求输出
Y,否则输出 N。输入输出样例
输入 #1
6 PAs1s2an 1a2bCql3 Pa12bsna ab1da3cd Paabdbcd Pa2
输出 #1
Y Y Y N N N
说明/提示
### 样例解释
- 密码
- 密码
- 密码
- 密码
- 密码
- 密码
### 数据范围
对于所有测试点,保证 $1 \leq T \leq 100$,并且每组密码长度不超过 $100$ 且至少为 $1$,每组密码仅由大小写字母和数字组成。
- 密码
PAs1s2an 是安全密码(有 $8$ 位、包含大写字母 P、A 和数字 1、2)。- 密码
1a2bCq13 是安全密码(有 $8$ 位、包含大写字母 C 和数字 1、2、3)。- 密码
Pa12bsna 是安全密码(有 $8$ 位、包含大写字母 P 和数字 1、2)。- 密码
ab1da5cd 不是安全密码(没有大写字母)。- 密码
Paabdbcd 不是安全密码(没有数字)。- 密码
Pa2 不是安全密码(只有 $3$ 位,太短了)。### 数据范围
对于所有测试点,保证 $1 \leq T \leq 100$,并且每组密码长度不超过 $100$ 且至少为 $1$,每组密码仅由大小写字母和数字组成。