题目:http://poj.org/problem?id=1007
AC代码(C++):
#include
#include
using namespace std;
struct A{
char a[55];
int s;
};
bool cmp(A a, A b){
return a.s<b.s;
}
int main(){
A aa[105];
int n,m;
cin>>n>>m;
for(int i = 0; i < m; i++){
cin>>aa[i].a;
}
for(int i = 0; i < m; i++){
int ss = 0;
for(int j = 0; j < n; j++){
for(int k = j+1; k < n; k++){
if(aa[i].a[j]>aa[i].a[k])ss++;
}
}
aa[i].s=ss;
}
sort(aa,aa+m,cmp);
for(int i = 0; i < m; i++){
for(int j = 0; j < n; j++){
cout<<aa[i].a[j];
}
cout<<endl;
}
}
总结:水题