题目描述:点击打开链接
/*
思路:穷举每一列数量最多的字符,然后链接起来便可。
如果数量相同,按照字典序链接便可。
不同字符个数只需要把字符总量减去每一列最多字符个数便可。
*/
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner cin = new Scanner(System.in);
int T=cin.nextInt();
while(T--!=0)
{
int n=cin.nextInt();
int m=cin.nextInt();
char [][]arr=new char[n][m];
for(int i=0;i<n;++i)
arr[i]=cin.next().toCharArray();
String str="";
int sum=0;
for(int i=0;i<m;++i)
{
int []t=new int[4];
for(int j=0;j<n;++j)
{
switch(arr[j][i])
{
case 'A':t[0]++;break;
case 'C':t[1]++;break;
case 'G':t[2]++;break;
case 'T':t[3]++;break;
}
}
int index=0;
for(int j=1;j<4;++j)
if(t[index]<t[j])
index=j;
sum+=n-t[index];
switch(index)
{
case 0:str+="A";break;
case 1:str+="C";break;
case 2:str+="G";break;
case 3:str+="T";break;
}
}
System.out.println(str);
System.out.println(sum);
}
}
}