UVA1368 DNA 序列

题目描述

输入 $m$ 个长度均为 $n$ 的 DNA 序列,求一个任意的 DNA 序列,该序列到其他 DNA 序列的 Hamming 距离最短。如果有多个可行解,请输出字典序最小的解。 输出这个该 DNA 序列和到其它序列最小距离。 > 什么是 Hamming 距离? > > 对于两个等长的序列,其 Hamming 距离等于值不同的位置个数。 > > 形式化地,有两个序列 $\{a_n\},\{b_n\}$,定义 > $$ > \operatorname{Hamming}(a,b)=\sum\limits_{i=1}^{n}[a_i\not=b_i] > $$ > > 其中 $[P]$ 为艾佛森括号,若 $P$ 为真返回 $1$,否则返回 $0$。

输入格式

**本题有多组测试数据**。 第一行输入数据组数 $T$。 对于每一组数据,第一行输入 $m$ 和 $n$。接下来 $m$ 行,每行输入一个长度为 $n$ 的字符串,代表一个 DNA 序列。

输出格式

输出共 $2T$ 行。 对于每一个数据,第一行输出 DNA 序列,第二行输出该序列到其它序列的 Hamming 距离之和。

说明/提示

Translated by user 726139。 ### 数据范围 对于 $100\%$ 的数据,$4\le m\le 50$,$4\le n \le 1000$。 保证每一个 DNA 序列(包括输出的)仅由 $\texttt{A},\texttt{C},\texttt{G},\texttt{T}$ 构成。