#include<stdio.h> #include<string.h> struct s{ char d[100]; int cnt; }dna[100],temp; int main() { int i,j,n,m,temp1; 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(int 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=i+1;j<m;j++) { if(dna[i].cnt>dna[j].cnt) { temp=dna[i]; dna[i]=dna[j]; dna[j]=temp; } } } for(i=0;i<m;i++) { printf("%s\n",dna[i].d); } } return 0; } |
Double click to view unformatted code.