#include<stdio.h> #include<string.h> struct s{ char d[100]; int cnt; }dna[100],temp; int main() { int i,j,n,m,s; int count; while(scanf("%d%d",&n,&m)!=EOF)//m个数 { for(i=0;i<m;i++) { scanf("%s",dna[i].d); } for(i=0;i<m;i++) { count=0; for(j=0;j<n-1;j++) { for(s=j+1;s<n;s++) { if(dna[i].d[j]>dna[i].d[s]) { count++; } } } dna[i].cnt=count; } for(i=0;i<m-1;i++) for(j=0;j<m-1-i;j++) if(dna[j].cnt>dna[j+1].cnt) { temp=dna[j]; dna[j]=dna[j+1]; dna[j+1]=temp; } for(i=0;i<m;i++) printf("%s\n",dna[i].d); } return 0; } |
Double click to view unformatted code.