标签:输出 using break lse 一个 字符串 etl ++i pat
题意:
输入一个正整数N(<=100),接着输入N行字符串。输出N行字符串的最长公共后缀,否则输出nai。
代码:
#include<bits/stdc++.h>
using namespace std;
string s[107];
int length[107];
char ans[307];
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n;
cin>>n;
cin.ignore();
int mn=999999;
for(int i=1;i<=n;++i){
getline(cin,s[i]);
length[i]=s[i].size();
mn=min(mn,length[i]);
}
int cnt=0;
for(int x=1;x<=mn;++x){
int flag=0;
for(int i=2;i<=n;++i){
if(s[i][length[i]-x]!=s[i-1][length[i-1]-x]){
flag=1;
break;
}
}
if(flag)
break;
ans[++cnt]=s[1][length[1]-x];
}
if(!cnt)
cout<<"nai";
else
for(int i=cnt;i;--i)
cout<<ans[i];
return 0;
}
【PAT甲级】1077 Kuchiguse (20 分)(cin.ignore()吃掉输入n以后的回车接着用getine(cin,s[i])输入N行字符串)
标签:输出 using break lse 一个 字符串 etl ++i pat
原文地址:https://www.cnblogs.com/ldudxy/p/11820319.html