#10302. DNA排序

内存限制:256 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: Turing001

题目描述

现在有一些长度相等的 DNA 串(只由 ACGT 四个字母组成),请将它们按照逆序对的数量多少排序。

逆序对指的是字符串A中的两个字符 A[i]、A[j],具有 i < j 且 A[i] > A[j] 的性质。

如字符串 "ATCG" 中,T 和 C 是一个逆序对,T 和 G 是另一个逆序对,这个字符串的逆序对数为 2。

输入格式

第 1 行:两个整数 n 和 m,n (0<n≤50) 表示字符串长度,m (0<m≤100) 表示字符串数量;

第 2 至 m+1 行:每行是一个长度为 n 的字符串。

输出格式

按逆序对数从少到多输出字符串,逆序对数一样多的字符串按照输入的顺序输出。

样例

样例输入

10 6
AACATGAAGG
TTTTGGCCAA
TTTGGCCAAA
GATCAGATTT
CCCGGGGGGA
ATCGATGCAT

样例输出

CCCGGGGGGA
AACATGAAGG
GATCAGATTT
ATCGATGCAT
TTTTGGCCAA
TTTGGCCAAA