AC代码
#include <bits/stdc++.h>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
int n;
cin>>n;
cin.ignore(); //吸收\n
//输入
bool flag=true;
char ans[257]; //*测试点3:数组大小
for(int i=0;i<n;i++){
char word[257];
cin.getline(word,sizeof(word));
reverse(word,word+strlen(word));
if(i==0){
strcpy(ans,word);
continue;
}
else{
if(ans[0]!=word[0]){ //后缀完全不符
flag=false;
break; //输出"nai"
}
int minLen=min(strlen(ans),strlen(word));
for(int j=1;j<minLen;j++){
if(ans[j]!=word[j]){
ans[j]='\0'; //每当ans[]变短就会多一个'\0'
break; //*测试点2:ans[]可能多次变短,用goto只会变短一次
}
}
}
}
//输出
if(!flag)
cout<<"nai";
else{
reverse(ans,ans+strlen(ans));
cout<<ans;
}
return 0;
}