专栏文章
题解:CF2068D Morse Code
CF2068D题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @min8b8fj
- 此快照首次捕获于
- 2025/12/01 22:12 3 个月前
- 此快照最后确认于
- 2025/12/01 22:12 3 个月前
感觉还是对 DP 过程中算贡献和分布转移的理解不是很深刻。
对二叉树形态 DP,由于节点放置不连续,显然要按深度 DP。
表示 个叶子, 个最大深度的叶子, 个次大深度的叶子,最大深度是 ,可以做到 。
我尝试了在转移时算贡献,但是没有成功,因为最终排名不确定。
事实上,DP 过程中算贡献和分布转移本质上是让每个点实时有贡献,并且固定一些点停止贡献。
对于扩展深度为 的点,我们并不用管,因为我们每次只会把点的最浅深度集体下移 ,且点只有在作为最浅深度时才会被固定。
因此这个点的实际深度就是这个点(这个点不存在时我们认为这个点的祖先就是这个点)在状态里的时间 。
令 表示固定了 个叶子不再扩展,在未固定的叶子中有 个最大深度、 个次大深度的叶子。
则要么固定一个次大深度的叶子,要么把次大深度的叶子全部扩展。
表示 的第 大的和,答案为 ,构造方案是简单的。
。
double 要加上 再转为 int 啊啊啊。相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...