按照逆序数排一下序输出就好
#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int> PII;
void Gao()
{
int n,m;
cin>>m>>n;
vector<PII>ans;
char a[110][110];
for(int i=1;i<=n;i++)
{
scanf("%s",a[i]);
int num=0;
for (int j=0;j<m;j++)
for (int k=j+1;k<m;k++)
if (a[i][j]>a[i][k]) num++;
ans.push_back(make_pair(num,i));
}
sort(ans.begin(),ans.end());
for (int i=0;i<n;i++)
{
printf("%s",a[ans[i].second]);
if (i!=n-1)
cout<<endl;
}
}
int main()
{
// freopen("a.in","r",stdin);
int T;
bool fst=false;
cin>>T;
while (T--)
{
if (fst)
cout<<endl<<endl;
fst=true;
Gao();
}
return 0;
}