UVa专题练习
A-4
A-5
A-6
A-7
A-8
A-9
A-10
A-11
A-12
A-13
A-14
A-15
A-16
A-17
A-18
A-19
A-20
A-21
A-22
A-23
A-24
动态规划初步
1 数字三角形
1.1 记忆化搜索
1.2 递推
2 DAG上的动态规划
2.1 DAG模型
2.2 最长路及其字典序
2.3 固定终点的最长路和最短路
3 背包问题
3.1 多阶段决策问题
3.2 规划方向
3.3 滚动数组
4 递归结构中的动态规划
4.1 表达式上的动态规划
4.2 凸多边形上的动态规划
4.3 树上的动态规划
5 集合上的动态规划
5.1 状态及其转移
5.2 隐含的阶段
概率dp
Codeforces 148D - Bag of mice 概率dp
poj 2151 Check the difficulty of problems 概率dp
hdu 4089 Activation
hdu 4035 Maze
zoj
3551 Bloodsucker
单调队列优化dp
形如f[i]=max/min (k[k]) + g[i] (k<i && g[i]是与k无关的变量)可进行单调队列优化
维护方法:
while(head<tail && check(L[head])) head++;
while(head<tail && Que[tail-1]<k[i-1]) tail--;
Que[tail]=k[i-1];L[tail++]=i-1;
POJ 2823
HDU 3415
hdu 3415 Max Sum of Max-K-sub-sequence 单调队列dp
HDU 3401
POJ 1821
HDU 2191
斜率优化dp
HDU 3507
训练参考
UVaOJ
111 历史考试
UVa
111 - History Grading 最长递增子序列 LIS
103 堆砌盒子
10405 最长公共子序列
UVa 10405 - Longest Common Subsequence 最长公共子序列模板
674 硬币找零
10003 切割木棍
116 单项TSP
10131 越大越聪明
10066 双塔
10192 假期
147 美元
357 让我来数数方案
562 划分硬币
348 最优数组乘法序列
624 CD
10130 超级天平
531 妥协
10465 或默辛普森
10285 滑雪
437 巴比伦塔
10404 Bachet的游戏
620 细胞结构
825 走在安全的一边
10069 不同的子序列
10534 波形序列
10051 立方体塔
10651 一维独立钻石
590 来去匆匆
10306 电子硬币
10739 字符串变回文
10304 最优排序二叉树
10271 筷子
10617 又是回文数
11137 立方数拆分
10154 重量和度量
10201 移动大冒险第四部
10453 制造回文串
10029 编辑步数
10313 付账
10401 受伤的皇后
10891 取数游戏
11151 最长回文串
10911 智力比赛组队
10635 王子和公主
10564 沙漏中的路径
662 快餐
10626 买可乐
10118 免费糖果
607 讲座安排
10604 化学反应
10913 网格上行走
11008 反物质射线
10723 电子基因
11258 字符串分割
10599 机器人
10817 校长的烦恼
10163 守店人
709 文本格式化
10280 新瓶装旧酒
10558 邪恶党的密谋
11081 字符串穿插