- #include <iostream>
- #include <stdio.h>
- #include <string.h>
- using namespace std;
- int main()
- {
- char a[50];
- int m,k1,k2,k3,k4;
- unsigned i;
- cin>>m;
- getchar();
- while(m--)
- {
- k1=k2=k3=k4=0;
- cin.getline(a,50);
- if(strlen(a)<8||strlen(a)>16)
- {
- cout<<"NO"<<endl;
- }
- else
- {
- for(i=0;i<strlen(a);i++)
- {
- if(a[i]>='0'&&a[i]<='9')
- k1=1;
- if(a[i]>='a'&&a[i]<='z')
- k2=1;
- if(a[i]>='A'&&a[i]<='Z')
- k3=1;
- if(a[i]=='~'||a[i]=='!'||a[i]=='@'||a[i]=='#'||a[i]=='$'||a[i]=='%'||a[i]=='^')
- k4=1;
- }
- if(k1+k2+k3+k4>=3)
- cout<<"YES"<<endl;
- else
- cout<<"NO"<<endl;
- }
- }
- return 0;
- }
杭电ACM2043密码的问题已经AC
最新推荐文章于 2017-08-30 21:53:43 发布