最长公共字符串后缀
题目描述:
输入及输出样例:
输入:
3
baba
aba
cba
2
aa
cc
2
aa
a
0
输出:
ba
a
思路:
将每个字符串反转,原问题就成了:最长公共字符串前缀
找到长度最小的字符串,从前往后截取长度1~minn.size()的字符串,将这个匹配串与每个字符串去比较
找到最后一个合法的匹配串,再反转回去,即为最大的公共后缀字符串。
CODE:
#include<iostream>
#include<algorithm>
#define ll long long
#define INF 0x3f3f3f3f
#define N 210
using namespace std;
ll n;
string s[N],minn;
int main()
{
ios::sync_with_stdio(false);
while(cin >> n,n)
{
ll t = INF;
string ans = "";
minn = "";