📄 4754305_wa.cpp
字号:
#include<iostream>
#include<string>
using namespace std;
int n;
string first,t;
string q[1000];
bool used[1000];
int tail;
bool nothave(string x)
{
int i;
for(i=0;i<tail;i++)
{
if(x==q[i]) return false;
}
return true;
}
void getall()
{
int i,j;
tail=0;
for(i=0;i<first.length();i++)
{
string x;
for(j=i;j<first.length();j++)
{
x+=first[j];
if(nothave(x))
{
q[tail]=x;
tail++;
}
}
}
}
void match(string t)
{
int i;
for(i=0;i<tail;i++)
{
if(used[i]==false&&t.find(q[i])==-1) used[i]=true;
}
}
string getan()
{
int i;
string re;
for(i=0;i<tail;i++)
{
if(used[i]==false)
{
if(q[i].length()>re.length()) re=q[i];
else
if(q[i].length()==re.length())
{
if(re.compare(q[i])<0)re=q[i];
}
}
}
return re;
}
int main()
{
int testnumber,i;
cin>>testnumber;
while(testnumber>0)
{
cin>>n;
cin>>first;
tail=0;
getall();
memset(used,false,sizeof(used));
for(i=1;i<n;i++)
{
cin>>t;
/// cout<<t<<endl;
match(t);
}
string result=getan();
if(result.length()<3) cout<<"no significant commonalities\n";
else cout<<result<<endl;
testnumber--;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -