十二省聯考 貳 壹玖

2022-08-29 02:39:11 字數 547 閱讀 2996

之前大假期集訓的時候好像做過,但是已經忘了,可能是水過去的

做之前建議先做一下noi2010超級鋼琴,跟這道題的思路是一樣的

要求的是這若干個區間貢獻的前 \(k\) 大,不妨列舉每乙個左端點,用 \(rmq\) (超級鋼琴) 或者可持久化 \(01trie\) (異或粽子)維護出貢獻最大的右端點,放到乙個大根堆裡,堆裡每個元素 \(max(i,l,r)\) 表示以 \(i\) 為左端點,右端點在 \([l,r]\) 的最大貢獻

每次取出堆頂元素 \(max(i,l,r)\),並求出最大貢獻的位置 \(t\),更新答案,並將 \(max(i,l,t-1)\) 和 \(max(i,t+1,r)\) 放入堆裡

比較新穎的思路,如果求若干個區間前 \(k\) 大時,沒準會用到

應該算是這套題裡面最簡單的了吧,但我還是沒有想到正解

對於每個節點開乙個優先佇列,直接 \(dfs\),走到乙個節點 \(u\),將它的所有兒子貪心地合併,最後再把自己的值 \(push\) 進去

不過合併的時候要啟發式合併,把小的並到大的裡面,複雜度是 \(\theta (n\log^2n)\) 的

十二省聯考2019 遊記

在機房呆了一天,大概看了看原先寫過的題,有點頹。下午的時候和大家一起打掃了一下機房。走的時候,看著空無一字的黑板,風吹起的棕黃色窗簾,遠方的藍色天空,有一種很濃厚的哀傷。時間過得真快啊,轉眼就是省選了呢。許是要退役了吧?許是要退役了吧。下午去試機了,感覺鍵盤不太星啊。考場倒是換了乙個地方 但是不讓我...

春節十二響 十二省聯考2019

給定一顆樹,要求將其上的節點分成若干組,使得每一組的節點互相不擁有祖先 後代關係。定義每一組的值為該組節點權值最大值,求值總和最小值。硬上不是很顯然的貪心,但是資料中鏈的情況給了提示。考慮鏈的情況 對於根節點兩側的鏈,我們分別排序,然後覆蓋選取即可。這個貪心的正確性是顯然的。現在考慮完整的資料 對於...

十二省聯考2019 春節十二響

點這裡看題目。感覺自己好蠢 假如我們有兩棵樹 t 1,t 2 我們應該怎麼計算出它們合併之後的最優解呢?設最優情況下,t 1 的所有記憶體段的集合為 m 1 t 2 的集合為 m 2 我們可以知道,m 1,m 2 中所有的元素都是不能再合併的 廢話 考慮有 m 1,m 2 in m 1,m 1 m ...