題意;
給出 個字符串,找到一個字符串,使得該字符串和其他字符串最多相差一個字符。
記錄每個字符串的衍生字符串,被衍生了 次的就是答案。
AC代碼;
int n, m, k;
int main()
{
int t;
sd(t);
while (t--)
{
sdd(n, m);
map<string, int> mp;
string s;
bool flag = 0;
rep(i, 1, n)
{
cin >> s;
set<string> st;
rep(j, 0, m - 1)
{
char t = s[j];
rep(k, 0, 25)
{
if (t - k >= 'a')
{
s[j] = t - k;
st.insert(s);
}
}
s[j] = t;
}
for (auto i : st)
++mp[i];
}
for (auto i : mp)
{
if (i.second == n)
{
cout << i.first << endl;
flag = 1;
break;
}
}
if (!flag)
puts("-1");
}
return 0;
}