区间DP
kalilili
双眼闭三年。
展开
-
POJ1651:Multiplication Puzzle(区间DP 最优矩阵链乘)
题意:除了头尾不能动,每次取出一个数字,这个数字与左右相邻数字的乘积为其价值,最后将所有价值加起来,要求最小值和最优矩阵链乘模型一样,最后取出的数决定了序,如果没学过最优矩阵连乘找重复子问题还是比较难找的DP//180K 0MS#include#include#include#includeusing namespace std;int dp[110][110];原创 2015-03-09 20:47:01 · 913 阅读 · 0 评论 -
zoj 3537 cake (区间DP+凸包+ 最优三角形剖分模型)
题意:一块多边形先判凸凹,凸则三角剖分三角剖分模型和最优矩阵链乘模型几乎相同,都是对区间的DP,只不过最优矩阵链乘的最后次乘法决定了决策顺序,三角剖分没天然的顺序,所以要人为加上顺序凸包用了卷包裹法//Accepted 3537 C++ 0 1004#include#include#include#include#include #include using names原创 2015-03-09 20:54:44 · 877 阅读 · 0 评论 -
UVA 10003 - Cutting Sticks (区间DP)
题意:把一根木棍按给定的n个点切下去,每次切的花费为切的那段木棍的长度,求最小花费。区间DP和POJ 3253-Fence Repair相似,POJ那题不是给定切割点,而是给定了需要切成的长度,所以可以用哈夫曼编码贪心做// Accepted C++ 0.112#include#include#include#includeusing namespace std;int l原创 2015-03-10 16:45:27 · 704 阅读 · 0 评论 -
UVA1626 - Brackets sequence(区间DP--括号匹配+递归打印)
题目描述:定义合法的括号序列如下:1 空序列是一个合法的序列2 如果S是合法的序列,则(S)和[S]也是合法的序列3 如果A和B是合法的序列,则AB也是合法的序列例如:下面的都是合法的括号序列(), [], (()), ([]), ()[], ()[()]下面的都是非法的括号序列(, [, ), )(, ([)]原创 2015-03-12 22:20:31 · 770 阅读 · 1 评论 -
Uva 1331 - Minimax Triangulation(最优三角剖分 区间DP)
题目大意:按照顺时针或者逆时针的顺序给出多边的点,要将这个多边形分解成n-2个三角形,要求使得这些三角行中面积最大的三角形面积尽量小,求最小值。思路:用区间DP可以很方便解决,多边形可能是凹边形,注意剖分的三角形必须在多边形内部,所以可以去掉剖分的三角形中包含其他点,但是其他的在多边形外部的三角形没想到其他方法去除,却ac了,不懂为何// Accepted C++ 0.042#inclu原创 2015-03-13 15:54:03 · 1541 阅读 · 0 评论 -
Codeforces Round #311 (Div. 2) E - Ann and Half-Palindrome(字典树+dp)
E. Ann and Half-Palindrometime limit per test1.5 secondsmemory limit per test512 megabytesinputstandard inputoutputstandard outputTomorrow Ann takes the hardest原创 2015-07-08 13:18:30 · 1097 阅读 · 0 评论