标签:play mat ios tput esc inf represent line partner
Description
Input
Output
Sample Input
3 2 GATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 3 GATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATACCAGATA GATACTAGATACTAGATACTAGATACTAAAGGAAAGGGAAAAGGGGAAAAAGGGGGAAAA GATACCAGATACCAGATACCAGATACCAAAGGAAAGGGAAAAGGGGAAAAAGGGGGAAAA 3 CATCATCATCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC ACATCATCATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AACATCATCATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
Sample Output
no significant commonalities AGATAC CATCATCAT
题解:求最长的公共字串而且依照字典序找最小的一个,因为长度小。暴力。
#include <iostream> #include <cstdio> #include <cstring> #include <string> using namespace std; string s[20]; int main() { int ncase; cin>>ncase; while(ncase--) { int n; scanf("%d",&n); for(int i = 0;i < n;i++) { cin>>s[i]; } bool flag = false; string res = "Z"; for(int i = 60;i > 2;i--) { for(int j = 0;j <= 60 - i;j++) { string s1(s[0],j,i); bool f = true; for(int k = 1;k < n;k++) { if(s[k].find(s1) == string::npos) { f = false; break; } } if(f) { if(res > s1) { res = s1; } flag = true; } } if(flag) { break; } } if(flag) { cout<<res<<endl; } else { cout<<"no significant commonalities\n"; } } return 0; }
标签:play mat ios tput esc inf represent line partner
原文地址:http://www.cnblogs.com/liguangsunls/p/6938106.html