第一次真切的感受这样的比赛,WA了一次,没有注意到是多组数据······其实这个题很水····只要是字母就是就是0只要是数字就是1.把所接受的字符串进行转化就可以得到二进制的数字,然后再进行转化,变成字母,最后得到想要的密码······
原题地址:点击打开链接。
代码如下:
#include<stdio.h>
int main()
{
int i,j,k,l,n,m;
int b[10001];
char a[10001],c[2001];
while(scanf("%d%*c",&n)!=EOF)
{for(i=0;i<n;i++)
{ scanf("%c",&a[i]);
if('A'<=a[i]&&a[i]<='Z')
b[i]=0;
if('0'<=a[i]&&a[i]<='9')
b[i]=1;
}
l=0;
for(i=0;i<n;i+=5)
{
c[l++]=b[i]*2*2*2*2+b[i+1]*2*2*2+b[i+2]*2*2+b[i+3]*2+b[i+4]+'A';
}
for(i=0;i<l;i++)
printf("%c",c[i]);
printf("\n");
}
return 0;
}