#include <stdio.h>
#include <string.h>
int main()
{
int i,j,k,flag1,flag2,flag3,flag4,N;
char a[51];
while(scanf("%d",&N)!=EOF)
{
for(i=0;i<N;i++)
{
k=0;
flag1=0;flag2=0;
flag3=0;flag4=0;
scanf("%s",a);
if(strlen(a)<8||strlen(a)>16)
{
printf("NO\n");
continue;
}
for(j=0;a[j]!='\0';j++)
{
if(flag1==0)
{
if('a'<=a[j]&&a[j]<='z'){flag1=1; k++;}
}
if(flag2==0)
{
if('A'<=a[j]&&a[j]<='Z'){flag2=1;k++;}
}
if(flag3==0)
{
if('0'<=a[j]&&a[j]<='9'){flag3=1;k++;}
}
if(flag4==0)
{
switch(a[j])
{
case '~' :flag4=1;k++;break;
case '!' :flag4=1;k++;break;
case '@' :flag4=1;k++;break;
case '#' :flag4=1;k++;break;
case '$' :flag4=1;k++;break;
case '%' :flag4=1;k++;break;
case '^' :flag4=1;k++;break;
default : break;
}
}
}
if(k>=3)printf("YES\n");
else printf("NO\n");
}
}
return 0;
}
解题思路:
注意事项:
参考代码:
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复