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] 斐波那契
還不會,目前的題解不是很優美,蹲一波題解。