![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
----------区间DP
mfcheer
他不停地跑啊跑 就为了追上那个曾经被寄予厚望的自己
展开
-
poj-3816 Treats for the Cows 【区间DP】
Treats for the CowsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 4259 Accepted: 2150DescriptionFJ has purchased N (1 The treats are interesting原创 2015-03-04 19:18:24 · 621 阅读 · 0 评论 -
LightOJ 1025 - The Specials Menu【区间DP】
题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1025题意:给你一个字符串,可以删除任意多个字符使之组成回文串,问你最多有多少种方法。思路: dp[i][j]表示i到j组成回文串的方法数目。 首先初始化dp[i][j] = 1,就是不删除任何字符的方法。若s[i] != s[i] dp[i][j] = dp[i+1][j原创 2016-03-02 19:47:28 · 383 阅读 · 0 评论 -
poj 3280 Cheapest Palindrome【区间DP】
题目链接:http://poj.org/problem?id=3280题意: 给你一个字符串以及添加和删除每个字符的代价,求使得原串变为回文串的最小的代价。解法: dp[i][j]表示使得i到j变为回文的最小代价。 dp[i][j] = min(dp[i+1][j]+add[i],dp[i+1][j]+del[i],dp[i][j-1]+add[j],dp[i][j-1]+del[j]) 如原创 2015-10-09 17:57:09 · 293 阅读 · 0 评论 -
hdu 5115 Dire Wolf【区间DP】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5115题意: 有n只狼,每只狼有两种属性,一种攻击力一种附加值,我们没杀一只狼,那么我们受到的伤害值为这只狼的攻击值与它旁边的两只狼的附加值的和,求把所有狼都杀光受到的最小的伤害值。代码:#include <stdio.h> #include <ctime> #include <math.h>原创 2015-08-20 02:23:39 · 669 阅读 · 0 评论 -
poj 1651 Multiplication Puzzle【区间DP】
题目链接:http://poj.org/problem?id=1651题意:初使ans=0,每次消去一个值,位置在pos(pos!=1 && pos !=n) 同时ans+=a[pos-1]*a[pos]*a[pos+1],一直消元素直到最后剩余2个,求方案最小的ans是多少?代码:#include <stdio.h>#include <ctime>#include <math.h>#inc原创 2015-08-03 01:25:41 · 752 阅读 · 0 评论 -
LightOJ 1033 - Generating Palindromes 【区间DP】
题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1033 题意:至少添加几个字符,能使得给定的串变为回文串。 解法:枚举起点终点,进行DP; 代码:#include <stdio.h>#include <ctime>#include <math.h>#include <limits.h>#include <compl原创 2015-06-10 15:56:22 · 888 阅读 · 0 评论 -
区间DP
区间动态规划问题一般都是考虑,对于每段区间,他们的最优值都是由几段更小区间的最优值得到,是分治思想的一种应用,将一个区间问题不断划分为更小的区间直至一个元素组成的区间,枚举他们的组合,求合并后的最优值。 1 设F[i,j](1<=i<=j<=n)表示区间[i,j]内的数字相加的最小代价 2 最小区间F[i,i]=0(一个数字无法合并)∴代价为0 3原创 2015-06-05 23:37:02 · 468 阅读 · 0 评论 -
LightOJ 1422 Halloween Costumes 【区间DP】
题目链接:http://lightoj.com/volume_showproblem.php?problem=1422解法:dp[i][j]=min(1+dp[i+1][j],dp[i+1][k-1]+dp[k][j]) 代码:#include <stdio.h>#include <ctime>#include <math.h>#include <limits.h>#include <co原创 2015-06-18 00:05:54 · 705 阅读 · 0 评论 -
poj 2955 Brackets【区间DP】
题目链接:http://poj.org/problem?id=2955题意:求回文子串的最大长度。解法:枚举区间长度,更新答案。代码:#include <stdio.h>#include <ctime>#include <math.h>#include <limits.h>#include <complex>#include <string>#include <functional>#原创 2015-06-17 20:13:45 · 491 阅读 · 0 评论 -
LightOJ 1031 - Easy Game【区间dp】
题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1031题意: 给一个序列,两个人轮流在序列的两边取任意个数的number,但每次只能从选定的那一边取,问取得数字的和的较大者比较小者多多少?思路: dp[i][j]表示i-j区间的最优解,然后枚举区间。代码:#include <cstdio>#include <cstring原创 2016-02-28 16:58:40 · 804 阅读 · 0 评论