1. 程式人生 > 其它 >「考試」noip模擬40-43

「考試」noip模擬40-43

我還是fw

40.1

線段樹

40.2

並查集

40.3

deque 維護每個時刻是否能左移的 01 序列,按題意模擬

41.1

單調棧

41.2

建圖最大費用可行流

41.3

樹剖 bitset 維護顏色,\(2^c\) 對每個人的集合,霍爾定理,答案對顏色交大小/人數取 min

41.4

dp,一句話說不完了,扔趙隊部落格就跑.jpg

42.1

樹形dp

42.2

按關係分組,大小為偶貢獻一定,大小為奇有1不定量,可以算出下界,到詢問的部分補齊方案為組合數,lucas計算

42.3

詢問差分成 x 和 y+1 消除上界影響,兩種 dp 一個和值域有關一個和堆數有關,按根號為界分別處理把狀態量壓到 \(n\sqrt n\)

,最後再合併

42.4

先消去頭尾相同部分,然後即為在 ABCD 中取 AC,分類討論中心在 A/C 中,翻轉一倍後用 kmp 驗證統計每個中心點的答案

43.1

樹形dp

43.2

二分答案,驗證一次可能仍有非法的地方,所以不斷驗證直到沒有,還可以兩個佇列模擬dij,不會

43.3

先數位 dp,把 log 個區間提出來,把詢問差分,再二分

43.4

將原問題轉化為選兩個相同值的考慮順序且可重的方案數,首先有個 \(O(n^3)\) 的 dp,f[i][j][0/1/2] 為前 i 個數最大 j 選了 0/1/2 個要選的數的方案,發現這個轉移以要選的數為分界之前和選什麼數無關都一樣,所以將相同的部分正著 dp 再將不同的部分反向 dp 即可