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