
DP
悲伤的牛奶
保持努力,保持乐观。
展开
-
Codeforces 273D Dima and Figure
链接:CF 273D大意:给你一个n*m的矩阵,让你在上面画一个凸的图形,问有多少种这样的图形。思路:n和m都是150的n4n^4n4就是5e8了不太现实,猜测复杂度是n3n^3n3的。这题初看比较复杂,其实想想要画这样一个图形,从上往下画的话,只需要保证两边都是一个单峰序列就可以了(当然可以有相等的),所以考虑设计dp状态,dp[i][j][k][l][[z]dp[i][j][k][l][[...原创 2020-04-01 20:50:56 · 355 阅读 · 0 评论 -
Codeforces Round #622 (Div. 2) D. Happy New Year
Problem Link:CF 1313DSolution: 无语辽,看了一遍题想了半天都不会,看着k≤8k \leq 8k≤8总感觉是要状压,想了半天也压不了啊,一个点可能有非常多线段覆盖,所以一直想能不能贪心。后面看了官方题解发现不太对劲,回头仔细看了看题发现是数据保证每个点最多有kkk条线段覆盖,而不是让你选每个点最多只能选kkk条线段。。。 害,知道了正确题意题解也相当明显了,k≤8...原创 2020-02-28 21:17:28 · 761 阅读 · 0 评论 -
A. Girls Band Party (From 2019 ICPC Asia Yinchuan Regional)
嘿嘿,今天终于想起来这题了,写一写。其实就是分组背包,分组背包的好处就在于分了组之后只需要考虑到当前组选了多少种,而不用记录每一种物品有没有选过。那么用dp[i][j][k]dp[i][j][k]dp[i][j][k]表示第iii组,已经选了jjj种物品,奖励为十分之kkk的情况下最大能获得的分数。答案就是max(dp[tot][j][k]∗(10+k)/10)max(dp[tot][j][k...原创 2019-12-09 16:31:39 · 709 阅读 · 0 评论 -
2017 JUST Programming Contest 3.0 J. Boxes Game
Link:https://codeforces.com/gym/101502/problem/JSolution:很有意思的一道博弈区间DP首先区间dp是显然的,dp[i][j]表示在区间[i, j]先手者的最大得分然后用一点min-max search的思想,我想最大,要让对手尽可能小例如dp[1][n]可以由两种状态转移而来 : dp[2][n] 和 dp[1][n-1]这...原创 2019-06-06 19:15:43 · 329 阅读 · 0 评论 -
2016-2017 ACM-ICPC Pacific Northwest Regional Contest (Div. 1) Problem B — Buggy Robot
题面:https://codeforces.com/gym/101201/attachments/download/5206/fast-en.pdfSolution:BFS维护DPdp[i][j][k]表示走完前k个字符串后,到达点(i, j)的最小改变次数数据范围很小,考虑直接bfs的时候把所有可行状态都压缩进去,然后dp更新然后一直跑到所有状态都最新就行了接下来考虑一...原创 2019-06-06 00:14:02 · 561 阅读 · 0 评论 -
2018 USP-ICMC E. Loppinha, the boy who likes sopinha
Link:https://codeforces.com/gym/101875/problem/ESolution:显然是一道动态规划题,状态也比较好想,dp[i][j][k]表示前i个用了j个转换,当前连续k个1的最小消耗值答案就是dp[n][?][?]中满足消耗值小于等于体力值的状态中j的最小值转移就分为s[i] == '1'和 s[i] == '0'了s[i] == '1'...原创 2019-05-16 17:04:51 · 418 阅读 · 0 评论 -
SCUOJ 4441: Necklace (Segment Tree or BIT 优化DP)
Link:4441: NecklaceSolution:只有十个可以当中间数的,那么我们枚举中间数,然后从左从右分别进行DP,再枚举断点,维护答案最大值即可。转移方程也很好想:dp1[i] = max(dp[i-1], max{ dp1[j] | j < i, a[i] <= a[j]} + a[i]) (右半部分)dp2[i] = max(dp[i+1], max...原创 2019-05-09 19:41:57 · 281 阅读 · 0 评论 -
BZOJ1233: [Usaco2009Open]干草堆tower 单调队列优化DP
https://www.lydsy.com/JudgeOnline/problem.php?id=1233这题我是完全一点一丢丢都不会做的,只能靠看题解维持一下容易想到n ^3的DP,其实就相当于暴力从前往后找了但其实这题倒着推要简单一点,因为正着推每一次都要重新找,然后检查是否合法,比如32 1 4只有2,1本来答案是2,加了个4答案反而只有1了但是倒着推我们就可以稍...原创 2019-04-20 23:39:17 · 247 阅读 · 0 评论 -
PTA 7-15 至多删三个字符 (30 分)
题意:给你一个字符串,至多删3个字符,问你能得到多少种不同的字符串思路:很显然的dp,dp[i][j]表示到第i个字符,删了j个的数量,答案就是sigma(dp[n][i]), i :[0. 3]。考虑转移:删第i个字符:dp[i][j] += dp[i-1][j-1](j != 0)不删第i个字符:dp[i][j] += dp[i-1][j];这样显然是有重复的,比如qw...原创 2019-03-14 20:24:07 · 1585 阅读 · 0 评论 -
[kuangbin带你飞]专题十二 基础DP1
会把所有这个专题所有题目的大致题解写上来,看情况放代码。专题链接:https://vjudge.net/contest/68966#overview题解按照解决人数降序排序 B - Ignatius and the Princess IV不知道这个水题是怎么混进这个专题的。 I - 最少拦截系统做过两遍的题目了。其实这个问题的本质上是个LIS,因为每一个上升的点又要...原创 2019-01-31 13:26:16 · 303 阅读 · 0 评论