标签:
HDOJ题目地址:传送门
3 a1b2c3d4 Linle@ACM ^~^@^@!%
NO YES NO
#include<stdio.h> #include<string.h> #include<map> #include<iostream> #include<algorithm> using namespace std; int main(){ int n,flag_len,flag_int,flag_A,flag_a,flag_special,flag; string s; cin>>n; getchar(); while(n--){ flag=0; flag_len=0;//长度 flag_int=0;//数字 flag_A=0;//大写字母 flag_a=0;//小写字母 flag_special=0;//特殊字符 getline(cin,s); if(s.size()>=8&&s.size()<16){ flag_len=1; } for(int i=0;i<s.size();i++){ if(s[i]>='0'&&s[i]<='9'){ flag_int=1; } if(s[i]>='a'&&s[i]<='z'){ flag_a=1; } if(s[i]>='A'&&s[i]<='Z'){ flag_A=1; } if(s[i]=='~'||s[i]=='!'||s[i]=='@'||s[i]=='#'|| s[i]=='$'||s[i]=='%'||s[i]=='^'){ flag_special=1; } if(flag_len&&((flag_int+flag_A+flag_a+flag_special)>=3)){ flag=1; break; } } if(flag){ printf("YES\n"); }else{ printf("NO\n"); } } }
标签:
原文地址:http://blog.csdn.net/qq_26891045/article/details/52065179