才開始呢!
1.樹形DP(可以說是基本掌握了)
-遞歸實現
-多叉轉二叉(也有不轉直接當圖做的)
-縮環成點(結合圖論)
=選課
=無上司的舞會
=
旅游路線
=約束背包
=最優子樹
=樹的路徑(這方面還要研究一下)
【結合 LCA求樹上兩點直接距離之類的】
【還要樹的性質的應用】
2.貪心DP(應該都會了吧)
-排序
-部分使用貪心策略
=養豬
=
產品排序 =Ticket Office
3.單調DP+四邊形不等式
-會證明決策單調性。
-二分找到類似二次函數那樣的拐點
-分離變量和常量
-數形結合,轉換成一次函數的斜率
=經典試題:最長限制字段和、多重背包(有點暈)
=USACO的那道題
=論文上的幾道題(沒有完全解決)
4.狀態壓縮DP
-描述狀態,適當轉移
-用類似于回溯的方式生成狀態,并轉移。
=鋪地磚1
=騎士覆蓋
=鋪地磚2
5.數學統計DP
-方法不是很好總結,就是聯想到數字的一些性質,有時候就是把數按位拆開看。
=SCOI2009.d1.t1 Windy數
=SCOI2009.d2.t2
=AHOI2009.d1.t2(未解決)
6.組合DP
-利用加法原理、乘法原理和組合公式做。
=POJ.DP練習賽上的題目(未解決)
=AHOI2009.d2.t2
7.圖的DP
-那一類經過k條邊的路徑數。
-上面那題的變形,要拆點。
-矩陣優化
=經典試題
=SCOI2009.d2.t3
8.構造類DP
-用狀態構造方程
-用方程生成狀態
=count
=twofive
=數學與程序設計上的一些題