matter
1.没全对,因为这个反转问题。不知道为什么。
2.getline也要加getchar(),吸收多余的空格。
code
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
int n , minsize = 1000000 , minid = 0;
vector<string> v;
//input
scanf("%d" , &n);
getchar();
for(int i = 0 ; i < n ; i ++){
string s;
getline(cin , s);
if(s.size() < minsize){
minsize = s.size();
minid = i;
}
//save the reverse of string
reverse(s.begin() , s.end());
v.push_back(s);
}
//find the kunchiguse
int k = 0;
string ans;
string minstring = v[minid];
for(int i = 0 ; i < minstring.size() ; i ++){
int flag = 0;
for(int j = 0 ; j < n ; j ++){
if(v[j][i] != minstring[i]){
flag = 1;
break;
}
}
if(flag == 1){
ans = minstring.substr(0 , i);
break;
}
if(flag == 0){
k ++;
}
}
//output
if(k == 0){
printf("nai");
}
else{
for(int i = ans.size() - 1 ; i >= 0 ; i --){
printf("%c" , ans[i]);
}
}
return 0;
}