随笔分类 - 动态规划-背包
摘要:题目 点这里看题目。 分析 一读题,发现不太会,那就看看数据范围吧。 一读数据范围,马上注意到 这样的部分分,而且排布位置靠前、分值占比不算大——说明两点: 这个部分分本身难度不大,但是应当很有启发性。出题人在暗示切入口。 一旦解决,之后只需要
阅读全文
摘要:题目 点这里看题目。 分析 很容易想到一个 的暴力 DP,当然也很容易看出这个 DP 根本没有和“单调不降”扯上任何关系。因此,接下来我们要做的就是利用好“单调不降”的性质。 一个想法是凸性——数组前缀和是下凸的。不过,由于我们对下凸壳做的是 卷积,所以这样
阅读全文
摘要:题目 点这里看题目。 分析 数据特殊,显然需要数据分治。 max 此时 的点没有贡献,那么就相当于 全部相等。这样 最终的贡献与 无关,我们把 的点全部模拟点亮一遍即可。 max 不难想到做树形 DP 。我们可以想到这样的状态: \
阅读全文
摘要:题目 点这里看题目。 分析 不难想到,题目的要求,就是要组内边总是比相邻的组间边小。 也就是要组内边的最大值小于组间边的最小值。 于是可以从小到大加边。如果一个连通块在加边的时候,变成了一个团,这就意味着现在这个连通块可以单分为一组(剩余的边只有可能成为组间边,组间边都比组内边大)。之后我们就用 \
阅读全文
摘要:题目 点这里看题目。 分析 显然可以数位 DP 。 当 的位数比较小的时候,我们可以暴力搜索出所有数字的出现情况,然后进行 DP 。 但是当 很长的时候,状态的范围就会非非非常大,无法 DP 。 但是注意到另一个事实是:对于一个确定的数,我们并不需要知道它长什么样子,而只需要
阅读全文
摘要:题目 "点这里" 看题目。 BZOJ 上这还是权限题。 分析 不难发现,最后我们走过的点一定组成了树上的一个连通块。 如何枚举树上一个连通块?我们可以想到用点分治。由于每一次我们进行分治之后会进行子树继续分治,这就相当于将原图变成了几个连通块。我们只需要对于每次分治,将分治中心设定为 “ 必选 ”
阅读全文