#include <stdio.h> #include <string.h> #include <math.h> struct DNA{ char data[100]; int sum; }s[50]; int main() { int n,m,temp; char a[100]; while(scanf("%d%d",&n,&m)!=EOF) { int i,j,k; for(i=0;i<m;i++) { scanf("%s",s[i].data); } for(i=0;i<m;i++) { s[i].sum=0; for(j=0;j<n;j++) { for(k=j+1;k<n;k++) { if(s[i].data[j]>s[i].data[k]) { s[i].sum++; } } } } for(i=1;i<m;i++) { for(j=m-1;j>=i;j--) { if(s[j].sum<s[j-1].sum) { temp=s[j].sum; s[j].sum=s[j-1].sum; s[j-1].sum=temp; strcpy(a,s[j].data); strcpy(s[j].data,s[j-1].data); strcpy(s[j-1].data,a); } } } for(i=0;i<m;i++) { printf("%s\n",s[i].data); } } } |
Double click to view unformatted code.