上海市青少年算法2023年9月月赛(丙组)
T1 口令的分类
题目描述
给定一串字符序列,请检查它是否符合成为口令的条件,并判断它的强弱。一个合规的口令,需要满足以下两个必要条件:
长度至少为 8,至多为 16。
只包含以下类型的字符
大写字母。
小写字母。
数字。
标点符号。符合要求的标点符号如下:
# & ' ^ " _ = ~ ? ! , . ; : + - *%/|\()[]{}<>
如果一个字符序列包含上述四种字符中的至少三种,则称之为强口令,否则称之为弱口令
输入格式
若干个字符,表示一个有待验证的字符串,保证每个字符都是可见字符,保证不会出现空格或换行。
输出格式
如果输入的密码串不合规,输出 Invalid password
合规但密码较弱,输出 Weak password
否则,输出 Strong password
样例数据
输入:
123456!Aa
输出:
Strong password
- //样例代码 字符串
- #include
- using namespace std;
- string s;
- string Symbols="#&'^\"_=~?!,.;:+-*%/|\()[]{}<>";
- int main()
- {
- cin>>s;
- if(s.size()<8||s.size()>16){
- cout<<"Invalid