#include<cstdio>
#include<string>
#include<iostream>
using namespace std;
void reverse(string &a){
int len=a.length();
for(int i=0;i<len/2;i++){
int temp=a[i];
a[i]=a[len-1-i];
a[len-1-i]=temp;
}
}
int main(){
int n,j,flag=0;//flag=1表示出现不等字符
string lines[101];//保存输入的句子
scanf("%d",&n);
getchar();//要吸收第一个换行符
for(int i=0;i<n;i++){
getline(cin,lines[i]);
reverse(lines[i]);//将字符串反转以向末位对齐
}
for(j=0;lines[0][j]!='\0';j++){//对第一个字符串从最后一位开始与其他字符串的对应位比较
for(int k=1;k<n;k++){//从与第二个字符串比较开始
if(lines[0][j]!=lines[k][j]) {//出现不等的字符
if(j==0) {printf("nai"); return 0;}//第一位就不相等,不存在相同后缀
flag=1;
break;
}
}
if(flag) break;//跳出循环
}
if(lines[0][j-1]==' ') j--;//最后一个相等的字符是空格,要去掉空格
for(int i=j-1;i>=0;i--){//输出相等的后缀
printf("%c",lines[0][i]);
}
return 0;
}
PAT A1077 Kuchiguse
最新推荐文章于 2021-02-07 15:23:35 发布