#include<iostream> #include<string> #include<cstring> #include<math.h> #include<algorithm> using namespace std; int nixu(string s){ int k=0; for(int i=0;i<s.length()-1;i++) for(int j=i+1;j<s.length();j++) { if(s[i]>s[j]){ k++; } } return k; } struct node{ string s; int nixu; }arr[51]; bool cmp(node x,node y){ return x.nixu<y.nixu; } int main(){ int n,m; cin>>n>>m; string s; for(int i=0;i<m;i++){ cin>>arr[i].s; arr[i].nixu=nixu(arr[i].s); } sort(arr,arr+m,cmp); for(int i=0;i<m;i++){ cout<<arr[i].s<<endl; } return 0; } |
Double click to view unformatted code.