题目链接:http://poj.org/problem?id=1007
暴力。。。
#include<stdio.h> #include<string.h> #include<stdlib.h> int f(char p[],int n){ int i; int j; int count=0; for(i=0;i<n;i++){ if(p[i]=='A'){ continue; } for(j=i+1;j<n;j++){ if(p[j]<p[i]){ count++; } } } return count; } int main(){ int i; int j; int n; int m; char a[102][52]; int b[102][2]; int t; scanf("%d %d",&n,&m); for(i=0;i<m;i++){ scanf("%s",&a[i]); } for(i=0;i<m;i++){ b[i][0]=f(a[i],n); b[i][1]=i; } for(i=0;i<m;i++){ for(j=i+1;j<m;j++){ if(b[j][0]<b[i][0]){ t=b[i][0]; b[i][0]=b[j][0]; b[j][0]=t; t=b[i][1]; b[i][1]=b[j][1]; b[j][1]=t; } } } for(i=0;i<m;i++){ printf("%s\n",a[b[i][1]]); } return 0; }