AcWing 779. 最长公共字符串后缀
原题链接
困难
作者:
Eric_Cao
,
2020-08-14 01:49:59
,
所有人可见
,
阅读 512
#include <iostream>
using namespace std;
int main()
{
int n;
while(cin >> n, n)
{
string a;
cin >> a; // 第一个输入的字符串 用于存放最大后缀
n -= 1;
while(n -- )
{
string s;
cin >> s;
bool flag = 0;
for (int i = 0; i < min(s.size(), a.size()); i ++ )
{
if(s[s.size() - 1 - i] != a[a.size() - 1 - i]) // 需要更新最大后缀 只保留最后i位
{
flag = 1;
a = a.substr(a.size() - i);
break;
}
}
// 对应后缀位置字符都相等, 只保留最短尾缀
if (flag == 0 && s.size() < a.size()) a = s;
}
cout << a << endl;
}
return 0;
}