纔不告訴你這些學校沒講呢!
都是些算法的簡單思想簡單總結,大佬勿入(嗯,dp開始涉及幾何了)
數位dp:
有的題要求的是一個數中的數字的排列的方式的種數,而並非與數本身有關係。它常常會給你一個區間 詢問其中有多少個滿足題意的數字,這時就要用數位dp。它是一種記憶化搜索,它的狀態常常是 前i位滿足題意的數字個數。同時要注意控制上界。答案就是ans(r)-ans(l-1)。
習題
基礎:HDU 2089 HDU 4734 POJ 3252 HDU 4507
水水水題:HDU 3709 UVA 1305 Hbzoj 1799
斜率優化:
通常有這樣的問題: 有限制條件。本來這樣的題是 複雜度,但是使用優先隊列就可以降爲 了。
但是這樣的方程呢: 哦豁優先隊列不得行了。
斜率優化是優先隊列的優化。
設我們選擇 比 時優,即有:
變形,得: ,此處注 要單增。
令兩個點 , 顯然不等式左邊的幾何意義爲點 與點 的斜率,而j優於k的條件爲斜率小於 ,即斜率越小越好。
然後再用優先隊列維護一個點集,隊列中相鄰兩點的斜率單增(斜率越小越好),然後每次根據上面的不等式維護隊首即可。時間複雜度這時被降爲了
習題
懶得打鏈接的博豬推薦:
[hdu3507] 打印文章(引例)
[HNOI2008] 玩具裝箱
[CEOI2004] 鋸木廠選址
[ZJOI2007] 倉庫建設
[USACO 2008 March Gold] 土地購買
[APIO2010] 特別行動隊
[APIO2014] 序列分割
[bzoj3437] 小P的牧場
[SDOI2016] 征途
決策單調性優化:
沒看懂,以後再更。四邊形不等式撒子鬼玄學嘛!!!!反正用個結論,然後降複雜度呀!
習題不會做呀:
BZOJ1563: [NOI2009]詩人小G
BZOJ5311: 貞魚
相關大佬博客鏈接
CDQ分治優化:
CDQ分治本身思想是:把一個求解的區間 分爲 與 兩個區間求解,然後在合併答案時考慮他們對答案多餘的貢獻,進而求解出 的答案。
dp中的優化大概是區間dp的優化吧:大概可以把 降爲 沒看到例題呢。
習題:
bzoj 2253: [2010 Beijing wc]紙箱堆疊
bzoj1492
Orz—-終於寫完了。