/*
translation:
给出若干条由A,G,C,T组成的字符串。现在求一个字符串,使得它到每个给出的字符串的hamming距离最小
haming距离定义为两个字符串不同字符的个数。
solution:
贪心
很明显,对于要求字符串的i位置上的字符来说,该字符必定在其它字符串上出现的字符最多。明白这一点也就没有难度了。
*/
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
const int maxn = 1000 + 5;
const char letter[] = {'A', 'C', 'G', 'T'};
char s[55][maxn];
int m, n, cnt[5];
int setNo(char c)
{
if(c == 'A') return 0;
if(c == 'C') return 1;
if(c == 'G') return 2;
if(c == 'T') return 3;
}
int main()
{
//freopen("in.txt", "r", stdin);
int T;
scanf("%d", &T);
while(T--) {
scanf("%d%d", &m, &n);
for(int i = 0; i < m; i++)
scanf("%s", s[i]);
char ans[maxn];
int p = 0;
int res = 0;
for(int i = 0; i <
la3602(贪心)
最新推荐文章于 2019-12-18 20:07:00 发布