B4449 [GESP202512 三级] 密码强度
题目描述
小杨是学校网络安全小组的成员,今天他的任务是设计一个“密码强度检测器”,帮助同学们检查自己的密码是否足够安全。一个安全的密码需要满足以下条件:
- 密码至少包含 $8$ 个字符(太短的密码容易被猜出来哦!)。
- 密码至少包含一个大写字母(A、B、C、...、Z 都可以)。
- 密码至少包含一个数字(0、1、2、3、...、9 都可以)。
例如:
- 密码 `Paas1s2an` 是安全密码(有 $8$ 位、包含大写字母 `P`、`A` 和数字 `1`、`2`)。
- 密码 `ab1da3cd` 不是安全密码(没有大写字母)。
- 密码 `Paabdbcd` 不是安全密码(没有数字)。
- 密码 `Pa2` 不是安全密码(只有 $3$ 位,太短了)。
输入格式
第一行一个正整数 $T$,代表需要安全检测的密码组数。
对于每组密码,一行包含一个字符串,代表需要安全检测的密码。
输出格式
对于每组密码,输出一行,如果满足强度要求输出 Y,否则输出 N。
说明/提示
### 样例解释
- 密码 `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$,每组密码仅由大小写字母和数字组成。