杭电ACM 2043 密码
2012-08-04 23:52
246 查看
http://acm.hdu.edu.cn/showproblem.php?pid=2043
#include <iostream> using namespace std; int main() { char ch[50]; int M; bool flag1,flag2,flag3,flag4; cin>>M; while(M--){ cin>>ch; flag1=0; flag2=0; flag3=0; flag4=0; int len=strlen(ch); if(len>16||len<8){ cout<<"NO"<<endl; continue; } for(int i=0;i<len;i++){ if(ch[i]>='A'&&ch[i]<='Z') flag1=1; else if(ch[i]>='a'&&ch[i]<='z') flag2=1; else if(ch[i]>='0'&&ch[i]<='9') flag3=1; else flag4=1; //if(ch[i]=='~'||ch[i]=='!'||ch[i]=='@'||ch[i]=='#'||ch[i]='$'||ch[i]=='%'||ch[i]=='^') } /* cout<<"\t"<<flag1<<" "<<flag2<<" "<<flag3<<" "<<flag4<<endl;*/ if(flag1+flag2+flag3+flag4>=3) cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; }