此题就是出题出坏了,本来没有空格的地方,案例中的答案和问题都有空格,导致多次出现WA。
下面是AC的代码,直接就是坑死人了。
#include <stdio.h>
int main()
{
int time;
scanf("%d",&time);
while(time--)
{
int m,n;
scanf("%d%d\n",&m,&n);
char dna[m][n+2];
char out[n];
int i,j;
for(i=0;i<m;i++)
scanf("%s",dna[i]);
int sum=0;
for(j=0;j<n;j++)
{
int A=0,C=0,G=0,T=0,max=0;
for(i=0;i<m;i++)
{
if(!(dna[i][j]-'A'))
A++;
else if(!(dna[i][j]-'G'))
G++;
else if(!(dna[i][j]-'C'))
C++;
else if(!(dna[i][j]-'T'))
T++;
}
if(max<A)
max=A;
if(max<C)
max=C;
if(max<G)
max=G;
if(max<T)
max=T;
if(max==A)
out[j]='A';
else if(max==C)
out[j]='C';
else if(max==G)
out[j]='G';
else if(max==T)
out[j]='T';
printf("%c",out[j]);
sum+=max;
}
printf("\n%d\n",m*n-sum);
}
return 0;
}