标签:poj1226 substrings 字符串 暴力 最长公共子串
Description
Input
Output
Sample Input
2 3 ABCD BCDFF BRCD 2 rose orchid
Sample Output
2 2
#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
const int INF = 0x3f3f3f3f;
string str[110];
int main()
{
int kase,n;
int minl=INF;
int minpos;
cin >> kase;
while(kase--)
{
minl = INF;
cin >> n;
for(int i = 0; i < n; i++)
{
cin >> str[i];
if(str[i].length() < minl)
{
minl = str[i].length();
minpos = i;
}
}
string key = str[minpos];
string tem, rev;
for(int i = minl; i >= 1; i--) //取字符串长度
{
for(int j = 0; j + i -1 < minl; j++)
{
tem = string( key.begin() + j, key.begin() + j + i );
rev = string( tem.rbegin(), tem.rend() );
bool flag = true;
for(int k = 0; k < n; k++)
{
if(str[k].find( tem ) == string::npos && str[k].find( rev ) == string::npos)
{
flag = false;
break;
}
}
if(flag)
{
printf( "%d\n", i );
goto here;
}
}
}
printf( "0\n" );
here:;
}
return 0;
}标签:poj1226 substrings 字符串 暴力 最长公共子串
原文地址:http://blog.csdn.net/maxichu/article/details/46314655