
动态规划
小小一只jerry
哈哈哈
展开
-
P1043 数字游戏 区间dp
这个题是一道典型的区间dp题,十分值得我们深入研究。事实上,这道题揭示了区间dp问题标准的思考方式。1.这道题题目中的问题是一个环上的问题,我们自然而然的想到要断环成链,方法是开一个两倍空间的数组,通过 a[i+n]=a[i] 的方式进行。如有同学对此方法不清楚者,可以去做一做这道题石子合并。(不知道为什么石子游戏竟然还是道绿题,百思不得其解)2.题目中要求我们将这个换分成若干份,通过...原创 2019-02-03 20:07:26 · 341 阅读 · 0 评论 -
P1282 多米诺骨牌
P1282 多米诺骨牌 这个题其实挺水的,主要是对于这个状态的理解一共有两种状态转移1.dp[i][j]=dp[i][j-(a[i]-b[i])];2.dp[i][j]=dp[i][j-(b[i]-a[i])]+1;两个状态取一个min就行了。为什么这样的转移是合理的呢。我们规定上面一半的点数为a[i],下面一半的点数为b[i]。那么首先我们看1.如果说不反转的...原创 2019-01-30 21:37:05 · 348 阅读 · 0 评论 -
P1272 重建道路 树上背包
这个题我们注意一下树上背包的dp表达形式。此题巧妙地是,我们通过子树来计算根节点划分成大小为k的子树的方案。我们设表示对于第个新儿子时,以为根节点,分离出大小为的子树的删减边的最小数目。那么显然对于任意一个,我们有显然第一维可以省掉,因此我们可以写出得到代码。#include <iostream> #include <vector>#inclu...原创 2019-08-20 19:08:35 · 227 阅读 · 1 评论 -
4922: [Lydsy1706月赛]Karp-de-Chant Number 贪心+dp
题解#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define M 340using namespace std;struct abcd{ int limit1,limit2,reward,length; fr...转载 2019-08-20 20:24:35 · 212 阅读 · 0 评论