开始没加fin判,导致段错误,比如
2
Ninjinnwaiyada T_T
T_T
#include <cstring>
#include <string>
#include <cstdio>
using namespace std;
string s[1010];
char ans[300];
int main(){
freopen("in.txt","r",stdin);
int n;
scanf("%d",&n);
getchar();
for(int i=0;i<n;i++){
char c[300];
gets(c);
s[i]=c;
}
int cnt=0;
for(int k=1;;k++){
int flag=1;
int fin=0;
for(int i=1;i<n;i++){
int a=s[i].size()-k;
int b=s[0].size()-k;
if ( a>=0 && b>=0){
if(s[i][a]!=s[0][b]){
flag=0;
break;
}
}else{
fin=1;
break;
}
}
if(fin==1){
break;
}
if(flag==1){
ans[cnt++]=s[0][s[0].size()-k];
}else{
break;
}
}
ans[cnt]='\0';
if(strlen(ans)==0){
printf("nai\n");
}else{
for(int i=strlen(ans)-1;i>=0;i--){
printf("%c",ans[i]);
}
printf("\n");
}
return 0;
}