WC2021 題解

WC2021 題解

考場上總的來說最大的問題就是寫的太慢了,所以少了一大堆時間思考,當然還有一些菜的問題。

[WC2021] 括號路徑

我也太屑了,考場上完全沒想到要推性質。

第一個性質,如果 \(u \to v\),那麼 \(v \to u\)

第二個性質,如果 $a\to b \(,\)b\to c$,那麼 \(a \to c\),這三個點任意互達。

這樣就可以做了,考慮把任意互達的點縮起來,我們從最簡單的情況做起,一個單一的括號()。

那麼可以枚舉一個點,把它的入邊裏顏色相同的點縮起來,我們可以使用線段樹合併來完成這個操作。

容易發現我們可以處理(())和 ()()的情況。

[WC2021] 表達式求值

我見過類似的題,知道可以用 bitset 處理沒有 ?的情況,但是當時的題解說維護集合 \(Z_y=\max_{A\in S}\min_{i=1,i\in A}^k i_y\),那種理解方式根本無法拓展,我可能就陷進去了。

正確的理解方式是這樣的:每種屬性獨立,我們對於一種屬性單獨來做,考慮一種簡單情況,就是元素取值爲 0/1,那麼我們發現總共不同的屬性只有 \(2^k\) 個,枚舉即可。

現在考慮元素取值更大,我們計算出 >= 一個元素的方案數,可以最後差分還原一下,把 >= x 的位置設成 1,否則設成 0,那麼和上面一樣做就行。

[WC2021] 斐波那契

還不會,目前的題解不是很優美,蹲一波題解。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章