BZOJ4569 萌萌噠 倍增 並查集

2021-08-08 12:26:41 字數 1106 閱讀 3014

沒想到這兩個東西還可以這麼用,我們可以用f[

i][j

] 表示[i

,i+2

j−1]

這一段區間屬於哪乙個集合,沒有則等於0.

那麼每次合併我們可以把這個限制拆成log個區間,依次合併起來。 若f

[i][

j]和f[s

][t]

同屬乙個集合,那麼f[

i][j

−1] 和f[

s][t

−1] ,f[

i+2j

−1][

j−1]

和f[s

+2t−

1][t

−1] 也同屬乙個集合。

BZOJ 4569 萌萌噠 (並查集)

time limit 10 sec memory limit 256 mb description 乙個長度為n的大數,用s1 s2 s3 sn表示,其中si表示數的第i位,s1是數的最高位,告訴你一些限制條件,每個條 件表示為四個數,l1,r1,l2,r2,即兩個長度相同的區間,表示子串sl1 s...

SCOI2016 萌萌噠 並查集 倍增

傳送門 一開始是想賭一把,把節點乙個乙個的unite,然後懷著wa的心情wa了。然後又準備用離散去優化,然後又懷著wa的心情wa了。萬般無奈去查題解,發現竟然要使用倍增?倍增是啥,我多少年沒有用過了 複習了一波倍增,原來倍增也可以用在並查集上,我對並查集又有了新的理解,這個資料結構,好強啊!incl...

SCOI2016 萌萌噠 倍增 並查集

乙個長度為n的大數,用s1s2s3.sn表示,其中si表示數的第i位,s1是數的最高位,告訴你一些限制條件,每個條件表示為四個數,l1,r1,l2,r2,即兩個長度相同的區間,表示子串sl1sl1 1sl1 2.sr1與sl2sl2 1sl2 2.sr2完全相同。比如n 6時,某限制條件l1 1,r...