#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)==2)//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;j++) { for(int s=j;s<n;s++) { if(dna[i].d[s]<dna[i].d[j]) count=count+1; } 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; //temp1=count[i]; //count[i]=count[j]; //count[j]=temp1; } } } for(i=0;i<m;i++) { printf("%s\n",dna[i].d); } } return 0; } |
Double click to view unformatted code.