poj DNA排序

2022-06-23 14:15:10 字數 949 閱讀 7598

描述

現在有一些長度相等的dna串(只由acgt四個字母組成),請將它們按照逆序對的數量多少排序。

逆序對指的是字串a中的兩個字元a[i]、a[j],具有i < j 且 a[i] > a[j] 的性質。如字串”atcg“中,t和c是一個逆序對,t和g是另一個逆序對,這個字串的逆序對數為2。

輸入

第1行:兩個整數n和m,n(0第2至m+1行:每行是一個長度為n的字串

輸出

按逆序對數從少到多輸出字串,逆序對數一樣多的字串按照輸入的順序輸出。

樣例輸入

10 6

aacatgaagg

ttttggccaa

tttggccaaa

gatcagattt

cccgggggga

atcgatgcat

樣例輸出

cccgggggga

aacatgaagg

gatcagattt

atcgatgcat

ttttggccaa

tttggccaaa

解題思路:

# include# include

# include

using

namespace

std;

struct

e}dn[

101];

intmain()

}dn[k].cnt=cnt;

}sort(dn,dn+m);

for(i=0;i)

printf(

"%s\n

",dn[i].s);

}return0;

}

poj 2778 DNA Sequence

和poj 1625一樣,不同的是長度變長了 先考慮另外一個問題,給你一個有向圖,從某個點出發走n步到其他任意點,問不同的走法。 對這個問題構造一個矩陣 matrix i j 表示從i到j有幾條邊,然後這個矩陣自乘n次就是答案。 再說這個問題, trie圖本身就是一個有向圖,那麼一個長度為n的字串相...

POJ 2778 DNA sequence

qaq 做完禁忌 又做過文字生成器 這道題就是個水題啦 首先轉移方程還是文字生成器的轉移方程 但是注意到l很大,但是節點數很小 轉移都是固定的,所以我們可以用ac自動機來構造轉移矩陣 之後進行矩陣乘法就可以了 順便提一句,模數是10 5 相乘會爆int 我為了省點常數自信開int,結果wa了兩發qa...

POJ1007 DNA Sorting

題目連結 求逆序數的題。因為只有4種元素,所以可以直接統計排在某個元素前面且比它小的元素個數 用4個變數記錄已出現的a c g t的個數 ,...