CF1676C Most Similar Words 题解
题意
定义长度为 $n$ 的字符串 $a,b$ 的差异度为 $\sum\limits_{i=1}^n|a_i-b_i|$,
$|a_i-b_i|$ 表示 $a_i$ 与 $b_i$ 在字母表上的距离,
给你 $n$ 个字符串,让你找一对字符串 $a,b$ 使得它们的差异度最小,输出这个最小值。
思路
观察到 $n$ 很小,我们可以 $O(n^2)$ 枚举每一对字符串,
对每一对字符串计算差异度,总复杂度 $O(n^2m)$,可以接受。
代码
#include <cstdio>
#include <cstring>
int f(int x) {return x >= 0 ? x : -x;}
int T, n, m, q;char s[150][15];
int main()
{
scanf("%d", &T);
while(T--)
{
scanf("%d%d", &n, &m);q = 1e9;
for(int i = 1;i <= n;++i) scanf("%s", s[i]);
for(int i = 1, t;i <= n;++i)
for(int j = i + 1;j <= n;++j)
{
t = 0;
for(int k = 0;k < m;++k)
t += f(s[i][k] - s[j][k]);
if(t < q) q = t;
}
printf("%d\n", q);
}
return 0;
}

浙公网安备 33010602011771号