Description:

n文字からなるDNA文字列がm個与えられる。(0この文字列を、ソート済み状態に近い方から順番に表示してほしい。
近さが同じなら、入力で与えられた順番に表示する事。
ソート済み状態に近いとは次のように定義される。

文字列から任意の2文字を取り出したペアの中で、2文字の位置と、アルファベットの順番が逆になっているものの数が少ない方が、ソート済み状態に近い。

Answer:

DNAを前から1文字ずつ読みながら、後ろに残っているACGTの数を更新していく事によって、一つのDNAに含まれる逆順ペアの数は、アルファベット数(4) * 文字列の長さで計算できる。
計算時間は、O(n*(m+log(n))となる。

解法プログラムは、O(n*m*log(n))で書いてある。

Source: