动态规划
文章平均质量分 92
cheng__yu_
这个作者很懒,什么都没留下…
展开
-
数位DP习题
数位DP习题不要62 (数位DP入门题)BombB-number不要62 (数位DP入门题)链接:http://acm.hdu.edu.cn/showproblem.php?pid=2089题意:统计给定区间内,数位上没有4且连续两位上不存在62的数字个数思路:从高位到低位扫,遇到 4 直接跳过,遇到 6 改变状态为 1 并判断下一个数字是否为 2#include <bits/stdc++.h>#define ll long longusing namespace std;con原创 2020-07-31 00:10:54 · 287 阅读 · 0 评论 -
树形DP习题
树形DPP1352 没有上司的舞会(树形DP入门题)Computer HDU - 2196 (树形DP经典题)P1352 没有上司的舞会(树形DP入门题)题意:给定一棵树,每个节点都有自己的权值,父子节点之间只能选择一个,问怎样可以使得整棵树选到的权值最大?思路:设 dp[u][0/1]dp[u][0/1]dp[u][0/1], 0 表示不选择 u 节点,1 表示选择 u 节点。可以这样转移:dp[u][0]=∑max(dp[v][0],dp[v][1])dp[u][0]=\sum max(dp原创 2020-06-25 22:31:08 · 333 阅读 · 0 评论 -
斜率优化DP
Division HDU - 3480 (斜率优化 || 四边形优化)链接:http://acm.hdu.edu.cn/showproblem.php?pid=3480题意:给定 n 个数,计算将它们分为 k 个子集的最小花费。花费为:每个子集最大值和最小值之差的平方和思路:设dp[i][j]表示前 i 个数,分成 j 个子集的最小花费可以得到转移方程为:dp[i][j]=∑k=1j−1dp[k][j−1]+(a[i]−a[k+1])×(a[i]−a[k+1])dp[i][j]=\sum_{k=原创 2020-06-23 19:40:56 · 140 阅读 · 0 评论