摘要:
好自闭,这种状态打个锤子 CSP。。 可以发现以下几个结论: 如果 $u\gt v$,那么一定无解。 存在一种方案,使得 $u$ 每次加上的 $v$ 都是 $2$ 的次幂。因为如果 $v=2^{a_1}+\cdots+2^{a_k},a_1\lt\cdots\lt a_k$,那么可以依次将 $u$ 阅读全文
posted @ 2022-10-27 22:23
Kobe303
阅读(28)
评论(0)
推荐(0)
摘要:
不难发现,包含关系只可能是短的路径被长的路径包含。 那么我们考虑按照路径长度从小到大,一条一条路径边加入边判断。 考虑先将树上的所有边断开,每加入一条路径的时候就将这条路径上包含的边加入,用并查集维护连通块的点数。不难发现,如果加入一条路径后,这条路径所在连通块的点数与当前加入的这条路径上的点数不同 阅读全文
posted @ 2022-10-27 19:56
Kobe303
阅读(21)
评论(0)
推荐(0)
摘要:
首先可以发现一些有用的性质: 每个数至多操作一次 如果一个数,在原数列中有它的倍数,那么改变成那个数一定是最优的。否则可以改变成所有数的最小公倍数。 贪心的,按出现次数从小到大依次改。 对两种情况分别跑一次,取个 $\min$。 Code: #include <bits/stdc++.h> usin 阅读全文
posted @ 2022-10-27 19:14
Kobe303
阅读(38)
评论(0)
推荐(0)
摘要:
首先不难发现最终答案中只会出现 $c_i$ 中的数,所以可以将 $c_i$ 离散化。 设 $f_{i,j,k}$ 表示区间 $[l,r]$,最小值不小于 $k$ 的最大收益,$cnt_{i,j}$ 表示区间穿过 $i$,且区间的 $c\ge j$ 的区间数量。 枚举最小的位置 $p$,则有转移: $ 阅读全文
posted @ 2022-10-27 07:34
Kobe303
阅读(34)
评论(0)
推荐(0)

浙公网安备 33010602011771号