JZOJ5183 小T的鋼琴

2021-07-31 13:07:33 字數 374 閱讀 9290

給出乙個陣列s,和n個陣列ti,s陣列中每個數最多出現一次,求出每個t陣列與s陣列最長公共子串行。

s字串數<=100000

t字串數<=200000

n<=5

字串數<=10

最長公共子串行常規做法是o(n^2)的。

超時。觀察發現,s陣列中每個數最多出現一次。

所以呢?

結論1:t陣列中的每個數都能找到s陣列中找到的唯一對應。

那我們就從t陣列尋求突破。

那就把t陣列每個數連線上其對應的數。

綜上,s與t的最長公共子串行即為t串每個字元在s串中對應位置的最長不下降子串行。

求每個t串的最長不下降子串行即可。

推結論啊!!!

寶盒 T爸寫給小T的書

1.準備老爸已經30歲了,但 生存與冒險 這一部分的內容仍然是我的最愛,所以我把 冒險家卷 放到了第一卷,因為,有乙個叫亞里斯多德的偉大 哲學家說過 勇氣是最好的美德 之後在 哲學卷 裡會有很多他的故事。冒險 絕對不是 置身於危險 而是 學習 嘗試 探索 體驗成功或失敗 再學習 的乙個過程,而這個過...

JZOJ 3773 小 P 的煩惱

問題是這樣的,高代老師近期要組織班上同學一起去漂流,漂流可以看做是在一張 n 個點 m 條邊的有向無環圖上進行的,點編號從 0 到 n 1 表示景點 邊是連線各景點的一定長度的河道。同時,定義編號為 s 是起點而 t 是終點。我們不妨把從 s 點到 t 點不論走什麼樣的路徑都需要經過的邊稱為橋,這些...

JZOJ5228 小奇的集合

題意 有乙個大小為n的可重集s,小奇每次操作可以加入乙個數a b a,b均屬於s 求k次操作後它可獲得的s的和的最大值。資料保證這個值為非負數 輸出乙個整數,表示和的最大值。答案對10000007取模。對於30 的資料,有 n 105,k 105,ai 105。對於100 的資料,有 n 105,k...