
dp
文章平均质量分 57
npugenji
这个作者很懒,什么都没留下…
展开
-
背包DP合辑
背包dp题集 大部分和背包dp有关的都会放进来原创 2017-08-30 17:25:23 · 418 阅读 · 0 评论 -
ACM-ICPC 2017 Asia Urumqi A - Coins 概率dp
用dp[i][j]表示翻第i轮,有j个朝上,这题用往后推的方法比较好写。而不是在前面找。 然后用san[i][j]表示从抛i个硬币,有j个向上的概率,注意这个概率跟那i个硬币原来是正是反没关系。 根据题目的要求,要尽量让向上的硬币多,所以每次尽量选朝下的硬币,但朝下的硬币可能不够,所以 dp里往后推的时候要分两种情况 1. 朝下硬币够k个,那么dp[i][j]*san[k+1][l+1] ...原创 2018-07-29 17:54:36 · 454 阅读 · 0 评论 -
POJ - 1742 Coins 背包dp变形
POJ 1742 首先多重背包有一种普通的二进制优化,然后这题还可以加一个判断如果,a[i] * c[i] >= m 的话,那就和完全背包一样,不用多重背包。这样应该能过。 第二种做法,是参考了完全背包,完全背包可以用O(nm)的复杂度完成,是因为,遍历m的时候没有数量的限制。那对于这题多重背包,就要考虑在dp里面加上当前物品用掉的数量信息,从而达到完全背包的复杂度。所以用dp[i][j...原创 2018-08-09 21:04:37 · 250 阅读 · 0 评论 -
2017-acmicpc-world-finals F - Posterize
题意 给n种颜色值,每种颜色值为r[i],数量为p[i],按颜色值递增顺序给出。 现在可以任意制造k个特殊值。 每种颜色值会找到和它差最小的特殊值,然后产生一个(r[i]−k[i])2∗p[i](r[i]−k[i])2∗p[i]( r[i] - k[i] ) ^ 2 * p[i]的权值。 问总权值最小是多少? dp[i][j]表示,到第i个值,分成j段。每段都有一个特殊值。 那么转移方...原创 2018-08-06 13:06:32 · 783 阅读 · 0 评论 -
#539. 「LibreOJ NOIP Round #1」旅游路线
首先看到有T<=1e5T<=1e5T dp[i][j]=max(dp[i][j],dp[k][j−p[i]]+mp[i][k])dp[i][j]=max(dp[i][j],dp[k][j−p[i]]+mp[i][k]) dp[i][j] = max(dp[i][j], dp[k][j - p[i]] + mp[i][k]) , mp[i][k]mp[i][k]mp[i][k]表示...原创 2018-08-06 17:01:27 · 451 阅读 · 0 评论