摘要: 一道不简单的DP题。我一开始设$f[u][j]$表示以u为根的子树中,建立$j$个伐木场的最小运费,并且假定u为入海口。转移的时候,因为需要记录子树中有多少是直接流向u的,所以开一个数组 $g[u][j]$表示以u为根的子树中有多少是直接流向u的。然而在转移的时候出现了问题。当从v转移到u时,我直接 阅读全文
posted @ 2020-09-22 22:02 王雨阳 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 传染病控制 sol: pre:预处理G数组 G[i][j]表示深度为 i 的第 j 个节点 dfs(i)表示搜索到第 k 层的节点 记录一个数组,如果在u切断,那么s[u] = 2,如果父节点s[fa] = 2, 则令f[v] = 1, 表示该节点不用再切断 注意:搜索终止有两个条件,满足任意一个均 阅读全文
posted @ 2020-09-20 20:26 王雨阳 阅读(64) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P1311 我们考虑先满足第一个条件,也就是最低消费不超过p。大于p的客栈将整个街道分成了x个区域,每个区域内部没有限制。我们可以开一个桶,统计在一个区域中每种颜色数相同的客栈有多少个, 假设颜色k有n个,那么答案就是 C(n,2). 阅读全文
posted @ 2020-09-19 21:06 王雨阳 阅读(90) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P1021 本题的难点在于如何确定搜索的上界。也就是不知道单张邮票的最大值是多少。我们可以考虑先一张一张选,当我们选到第i张时,能拼到的最大连续值为s,那么下一张邮票的上界 就是s + 1,因为如果再大,就没有办法拼出s + 1了。 阅读全文
posted @ 2020-09-19 20:54 王雨阳 阅读(126) 评论(0) 推荐(0) 编辑
摘要: [https://www.acwing.com/problem/content/103/] 首先,题目给了m对关系 (i,j),表示i和k可以互相看见。那么,这m对关系不能有交叉,只可以重叠。 一开始n头牛都是最高的,给了一对关系 (i,j),那么i和j之间的牛的高度都减去1。所以题目就是维护一个序 阅读全文
posted @ 2020-09-10 19:59 王雨阳 阅读(94) 评论(0) 推荐(0) 编辑
摘要: [https://www.acwing.com/problem/content/description/102/] sol: 区间加减首先想到差分,差分可以将区间操作转化为单点操作。设差分数组为 \(b\),那么题目就转化为: 1.求将 \(b_2\) ~ $b_n$都变为$0$的最小操作次数。 2 阅读全文
posted @ 2020-09-09 19:27 王雨阳 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 64位整数乘法 [https://www.acwing.com/problem/content/92/] sol: 将 b 进行二进制拆分,就变成了计算$a*(20 + 21 + 2^2 +....) $,结合乘法分配律,对每一项进行相加,得到结果。 \(O(logN)\) LL mul(LL a, 阅读全文
posted @ 2020-09-05 21:54 王雨阳 阅读(114) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2020-09-05 21:18 王雨阳 阅读(0) 评论(0) 推荐(0) 编辑
摘要: [https://www.luogu.com.cn/problem/UVA12716] sol: 异或的性质: 1.满足交换律,结合律 2.\(a ^ a = 0\) 3. 如果$a ^ b = c$, 则 \(b = c ^ a\) 假设$gcd(a, b) = c$, 那么$a ^ c = b$ 阅读全文
posted @ 2020-09-05 20:06 王雨阳 阅读(129) 评论(0) 推荐(0) 编辑
摘要: [https://www.luogu.com.cn/problem/UVA10791] sol: 设唯一分解式$n = p_1^p_2^...$,那么$p_i^$作为一个单独的整数时最优。 证明一下,对于一个合数x, 将它们拆成两个互质的数a和b,答案会更优,可以用作差法证明。其次,对于n,我们不能 阅读全文
posted @ 2020-09-04 21:23 王雨阳 阅读(163) 评论(0) 推荐(0) 编辑