随笔分类 -  DP

摘要:题面简化 给定大小为n的树,树上每个点被选中需要代价,每条边连接的两端至少要有一个被选中 m组询问,钦定两个点的状态,询问最小花费值 洛谷 题解 先考虑暴力的复杂度瓶颈: O(n^2), 是因为树形DP中有两个点的状态被钦定了, 导致我们不得不重新计算整棵树, 重复计算的内容: 最初的树形DP中,每 阅读全文
posted @ 2020-11-10 23:02 yzhx 阅读(114) 评论(0) 推荐(1)
摘要:题目 洛谷 CF 题解 考虑DP 先由范围盲猜一波 分析复杂度可得: \(O(n^2)\) 所以先设 dp[l][r] 表示处理lr区间的答案 但对于区间lr的状态而言,显然是不够的,还要再记录l和r的颜色 所以dp[l][r][x][y]表示l颜色为x, r颜色为y ($0<=x,y<=2$) 考 阅读全文
posted @ 2020-10-31 22:34 yzhx 阅读(147) 评论(0) 推荐(1)
该文被密码保护。
posted @ 2020-10-22 11:30 yzhx 阅读(17) 评论(0) 推荐(0)
摘要:快速讨伐 ( 一道DP与组合数学的思维好题 ) "传送门" 前置小技巧 (线性求阶乘的逆元) 根据逆元的定义 : $a x \equiv 1 (mod p)$ 所以相当于 $ x== $ $1\over a$ (在膜意义下) 那么 $1\over !(n+1)$ 也就相当于 !(n+1) 的逆元, 阅读全文
posted @ 2019-09-16 21:22 yzhx 阅读(203) 评论(0) 推荐(3)
摘要:题意简化 "传送门" 有 n 个物品和容量为 m 的背包,每个物品最多有一个先决条件物品 (即必须选了它的先决条件物品,才能选当前物品) ,第 i 个物品占 Wi 单位空间,有 Vi 的价值,求最大总价值 n using namespace std; define re register defin 阅读全文
posted @ 2019-08-09 08:42 yzhx 阅读(173) 评论(0) 推荐(1)
摘要:题意简化 "传送门" 给定一个矩阵,每个点有高度,矩阵的第一行的每个点都可以修蓄水池,其他点可以修输水站,输水站只能利用高度差来取水,试问最后一行能否都有水 可以则要求最小化蓄水池,不能则求最小化最后一行的干旱点 题解 首先有个很重要的性质,是可以推出来的: 第一行的每个点所能管辖到的最后一行的点一 阅读全文
posted @ 2019-05-03 10:10 yzhx 阅读(223) 评论(0) 推荐(1)
摘要:题意简化 "传送门" 给定n个格子,每个格子均有其贡献,与m次前进(每次前进距离在1~4之间,顺序随机),1~n最大化其价值 $n define rnt register int define c f[c1][c2][c3][c4] using namespace std; int f[45][45 阅读全文
posted @ 2019-05-03 08:14 yzhx 阅读(238) 评论(0) 推荐(1)
摘要:题意简化 "传送门" 给定一个n m的矩阵,在每一行中取m次数,每次取数只能从行首或尾取数,第i次取数的贡献是 $2^i 该点值$ ,操作n行,求最大答案 n,m using namespace std; define re register define ll long long define g 阅读全文
posted @ 2019-04-13 10:25 yzhx 阅读(310) 评论(0) 推荐(1)
摘要:题目描述 "~~甩个链接就走~~" 题解 先预处理出每个位置上分别填上 1~k 的数的逆序对的数量的前缀和与后缀和 (不用管原来有值的,统计时不计入答案就行了) ~~(有点绕,看代码应该能懂)~~ 然后枚举每个 1 的位置填的数 设 dp[i][j] 表示填到第 i 个 1 填且第 i 个数为 j 阅读全文
posted @ 2019-04-02 17:08 yzhx 阅读(149) 评论(0) 推荐(1)
摘要:题目描述 老C的键盘 题解 显然对于每个数 x 都有唯一对应的 \(x/2\) , 然而对于每个数 x 却可以成为 \(x*2\) 和 \(x*2+1\) 的对应数 根据这一特性想到了啥??? 感谢leo101的友情点拨 二叉树!!! 所以可以把 x/2 看做是 x的父亲, 1 显然就是根 可以把 阅读全文
posted @ 2019-04-02 16:31 yzhx 阅读(252) 评论(0) 推荐(1)
摘要:题意简化: "[luogu] Piling Up" 一开始有n个颜色为黑白的球,但不知道黑白色分别有多少,m次操作,每次先拿出一个球,再放入黑白球各一个,再拿出一个球,最后拿出的球按顺序排列会形成一个颜色序列,求颜色序列有多少种 n,m小于等于3000 答案对1e9+7取膜 一些乱七八糟的东西 这个 阅读全文
posted @ 2019-03-28 16:24 yzhx 阅读(269) 评论(0) 推荐(1)