#include<cstdio> #include<cstring> #include<cmath> #include<iostream> #include<algorithm> #define N 100 using namespace std; struct DNA { char len[50]; int num; }; int nizhi(char str[]) { int n,i,j; for(i=0;i<strlen(str);i++) for(j=i+1;j<strlen(str);j++) { if(str[i]>str[j]) n++; } return n; } bool cmp(DNA a,DNA b) { return a.num<b.num; } int main() { int n,m;; while(scanf("%d%d",&n,&m)!=EOF) { char str[m][n]; int i,j; struct DNA dna[m]; for(i=0;i<m;i++) { scanf("%s",&dna[i].len); dna[i].num=nizhi(dna[i].len); } sort(dna,dna+m,cmp); for(i=0;i<m;i++) printf("%s\n",dna[i].len); } return 0; } |
Double click to view unformatted code.