#include<stdio.h> #include<math.h> #include<string.h> #include<stdlib.h> #include<iostream> #include<algorithm> using namespace std; typedef struct dna { char name[100]; int num; } dna; bool cmp(dna a,dna b) { if(a.num>b.num) { return false; }else if(a.num==b.num) { return false; } else { return true; } } int main() { int n,m; while(scanf("%d %d",&n,&m)!=EOF) { dna d[101]; for(int i=0; i<m; i++) { d[i].num=0; scanf("%s",d[i].name); for(int j=0; j<n; j++) { for(int z=j+1; z<n; z++) { if(d[i].name[j]>d[i].name[z]) { d[i].num++; } } } } sort(d,d+m,cmp); for(int i=0; i<m; i++) { printf("%s\n",d[i].name); } } } |
Double click to view unformatted code.