F. Spy-string(暴力)
思路:暴力枚舉,因爲答案字符串與個字符串中任何一個都最多有一位不同。
所以任選一個字符串作爲答案字符串,然後對每一位進行從暴力枚舉。
時間複雜度:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+5;
int n,m;
string s[15],str;
bool fun(){
for(int i=1;i<=n;i++){
int cnt=0;
for(int j=0;j<m;j++){
if(str[j]!=s[i][j]) cnt++;
if(cnt>=2) return 0;
}
}
return 1;
}
#define mst(a) memset(a,0,sizeof a)
int main(){
int t;
cin>>t;
while(t--){
cin>>n>>m;
for(int i=1;i<=n;i++) cin>>s[i];
bool ok=0;
for(int i=0;i<m;i++){ //暴力枚舉.
str=s[1];
for(char c='a';c<='z';c++){
str[i]=c;
if(fun()){
ok=1;
break;
}
}
if(ok) break;
}
if(ok) cout<<str<<endl;
else puts("-1");
}
return 0;
}