UVA 1368 DNA
#include<stdio.h> #include<stdlib.h> #include<string.h> #define maxn 1000+10 int main(){ int m,n,t,ans[maxn*50]; char s[60][maxn]; scanf("%d",&t); while(t--){ scanf("%d%d",&m,&n); for(int i=0;i<m;i++){ scanf("%s",s[i]); } char a; int sum=0; for(int j=0;j<n;j++){ int mini=0; memset(ans,0,sizeof(ans)); for(int i=0;i<m;i++){ ans[s[i][j]]++; if(ans[s[i][j]]>mini){ mini=ans[s[i][j]]; a=s[i][j]; } if(ans[s[i][j]]==mini&&a>s[i][j]){ mini=ans[s[i][j]]; a=s[i][j]; } } printf("%c",a); for(int i=0;i<m;i++){ if(s[i][j]!=a) sum++; } } printf("\n"); printf("%d\n",sum); } return 0; }