某通信系统收集到 n 个长度为 m 的编码串,每个编码串仅由小写字母组成。定义两个等长编码串 p,q 的错配数为
i=1∑m[pi=qi]某通信系统收集到 n 个长度为 m 的编码串,每个编码串仅由小写字母组成。对于两个等长编码串 a 和 b,定义它们的错配数为 ∑i=1m[aiebi],其中方括号表示条件成立时取 1,否则取 0。若两个编码串的错配数不超过 k,则称它们直接兼容。如果两个编码串可以通过若干个直接兼容的编码串连接起来,则称它们属于同一个连通簇。请判断这 n 个编码串是否全部属于同一个连通簇。如果是,输出 YES;否则需要删除一些编码串,使剩余编码串构成一个连通簇,输出 NO 以及最少需要删除的编码串数量。约束:T 不超过 100;每组数据中 n 不超过 500,且满足 1≤k≤m≤500;单个测试文件中所有 n 的总和不超过 500。
第一行输入一个整数 T,表示数据组数。对于每一组数据:第一行包含三个整数 n、m、k;接下来 n 行,每行输入一个长度为 m 的仅由小写字母组成的编码串。
对于每组数据,如果所有编码串已经属于同一个连通簇,则输出一行 YES;否则输出两行,第一行输出 NO,第二行输出一个整数,表示最少需要删除的编码串数量。
By signing up a CodeFun2000 universal account, you can submit code and join discussions in all online judging services provided by us.