[GESP202512 三级] 密码强度

入门 GESP 三级 真题

题目描述

小杨是学校网络安全小组的成员,今天他的任务是设计一个“密码强度检测器”,帮助同学们检查自己的密码是否足够安全。一个安全的密码需要满足以下条件:

  • 密码至少包含 $8$ 个字符(太短的密码容易被猜出来哦!)。
  • 密码至少包含一个大写字母(A、B、C、...、Z 都可以)。
  • 密码至少包含一个数字(0、1、2、3、...、9 都可以)。

例如:

  • 密码 PAs1s2an 是安全密码(有 $8$ 位、包含大写字母 PA 和数字 12)。
  • 密码 ab1da3cd 不是安全密码(没有大写字母)。
  • 密码 Paabdbcd 不是安全密码(没有数字)。
  • 密码 Pa2 不是安全密码(只有 $3$ 位,太短了)。

输入格式

第一行一个正整数 $T$,代表需要安全检测的密码组数。

对于每组密码,一行包含一个字符串,代表需要安全检测的密码。

输出格式

对于每组密码,输出一行,如果满足强度要求输出 Y,否则输出 N。

数据范围

样例解释

  • 密码 PAs1s2an 是安全密码(有 $8$ 位、包含大写字母 PA 和数字 12)。
  • 密码 1a2bCq13 是安全密码(有 $8$ 位、包含大写字母 C 和数字 123)。
  • 密码 Pa12bsna 是安全密码(有 $8$ 位、包含大写字母 P 和数字 12)。
  • 密码 ab1da5cd 不是安全密码(没有大写字母)。
  • 密码 Paabdbcd 不是安全密码(没有数字)。
  • 密码 Pa2 不是安全密码(只有 $3$ 位,太短了)。

数据范围

对于所有测试点,保证 $1 \leq T \leq 100$,并且每组密码长度不超过 $100$ 且至少为 $1$,每组密码仅由大小写字母和数字组成。

样例输入 1

6
PAs1s2an
1a2bCql3
Pa12bsna
ab1da3cd
Paabdbcd
Pa2

样例输出 1

Y
Y
Y
N
N
N
时间限制: 1000ms
内存限制: 128MB
通过率: 0.0%
提交数: 0

设置

导航栏小工具

时钟
显示实时时钟(默认组件)
📝
代码粘贴板
快速创建和分享代码片段