测试点10的第9、10个数据一直过不了,也找不出是什么问题,想看看数据
#include <stdio.h>
int main(){
char str[1010];
int T,n;
scanf("%d",&T);
while(T--){
int p=0;
int k[125]={0};
scanf("%d",&n);
scanf("%s",&str);
for(int i=1;i<=n;i++){
int g=((int)str[i]+7);
if(i>=4){
if((g-13)%26==(str[i-4]+7)%26&&g%26==(str[i-3]+7)%26&&g%26==(str[i-2]+7)%26&&(g-3)%26==(str[i-1]+7)%26){
k[(int)str[i]]=1;
}
}
if(i>=6){
if((str[i-6]+7-16)%26==g%26&&(g-6)%26==(str[i-5]+7)%26&&(str[i-4]+7-11)%26==g%26&&(str[i-3]+7-7)%26==g%26&&(str[i-2]+7-2)%26==g%26&&(str[i-1]+7-7)%26==g%26){
k[(int)str[i]]=1;
}
}
}
for(int i=97;i<=122;i++){
if(k[i]==0){
p=1;
break;
}
}
if(p==1){
printf("0 error(s), 0 warning(s)\n");
}
else{
printf("Oops!\n");
}
}
return 0;
}
正赛提交的所有代码均已公开可供参考。