随笔分类 - 动态规划
摘要:题目链接 一道 dp 板子题。 只需要设 为前 位 为 的方案数的数量即可。 剩下的就看代码了。 参考代码: 点击查看代码 #include<bits/stdc++.h> using namespace std; #defin
阅读全文
摘要:题目链接 CF1272D Remove One Element 题意简述 给定一个长度为 的序列,你需要求出至多删除一个数后的这个序列的最长上升子串。 解题思路 首先我们可以想一下这题的弱化版,给定一个长度为 的序列,你需要求出至多删除一个数后的这个序列的最长上升子序列。 这
阅读全文
摘要:题目链接 一道 dp 的入门题。 : 考虑直接爆搜,可以考虑到所有情况。 : 考虑 ,设 代表到达第 层第 个数所能达到的最大值。 状态转移方程为 \(dp_{i,j}=a_{i,j}+\max(d
阅读全文
摘要:题目链接 数字三角形的变形。 直接在原来的基础上加个判断 倍的就行了。 参考代码: 点击查看代码 #include<bits/stdc++.h> using namespace std; long long n,m,ans=-1e18,a[110][110],dp[110][110][5
阅读全文
摘要:题目传送门 一道小清新动态规划题,直接设 表示前 个鼹鼠最多能打到几个,然后状态转移方程也很好想了。 参考代码: 点击查看代码 #include<bits/stdc++.h> using namespace std; long long n,m,ans,dp[1001
阅读全文
摘要:题目传送门 一道算是 dp 的板子题了。 题意大概就是 01 背包 + 捆绑。 首先回顾一下 01 背包,一个比较基础的 dp 题,状态转移方程也很好想,是 。 代码实现如下: 点击查看代码 #inclu
阅读全文