杭电ACM2043密码的问题已经AC

2014-11-24 03:28:23 · 作者: · 浏览: 0
[cpp]
#include
#include
#include
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"< }
else
{
for(i=0;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"< else
cout<<"NO"<
}
}
return 0;
}