吃饱了哈哈,虽然又是一个人孤孤单单的吃,最后发现饭堂只剩我跟那些打饭打菜的阿姨大叔了。。继续刷水题~
/*
zoj_1188 水题
其实一开始看到这个题目想到的是逆序数和归并排序。。不过数据
很弱很弱而且还给了2s。再怎么暴力也不会超啦。。
*/
#include <iostream>
#include <cstdio>
#include <string>
#include <algorithm>
using namespace std;
struct dna
{
string s;
int value;
}d[110];
void inint()
{
int i;
for( i=0;i<110;i++ )
d[i].value=0;
}
bool cmp( dna a,dna b )
{
return a.value<b.value;
}
int main()
{
int N,n,m,i,j,k,sum,first;
first=1;
cin>>N;
while( N-- )
{
inint();
cin>>n>>m;
for( i=0;i<m;i++ )
{
cin>>d[i].s;
for( j=1;j<n;j++ )
{
for( k=j-1;k>=0;k-- )
{
if( d[i].s[j]<d[i].s[k] )
d[i].value++;
}
}
}
sort( d,d+m,cmp );
if( first!=1 ) cout<<endl;
for( i=0;i<m;i++ )
cout<<d[i].s<<endl;
first++;
}
return 0;
}