LOJ2482 CEOI2017 Mousetrap 二分答案、树形DP
表示想不到二分答案qwq
将树看作以陷阱为根。先考虑陷阱和起始点相邻的情况,此时老鼠一定会往下走,而如果管理者此时不做操作,那么一定会选择让操作次数变得最大的一棵子树。设\(f_i\)表示当前老鼠在第\(i\)个点、管理者先手,老鼠往下然后被逼回第\(i\)个点的最小操作次数。那么管理者一定会封掉儿子中\(f\)最大的,然后老鼠进入\(f\)次大的;当老鼠走到子树中一个点不能动的时候,管理者一定会把这个点的其他没有被封住的子树全部封住,这样显然是最优的。所以\(f_i = cmx\{f_j\} + du_i\),那么相邻的情况答案就是\(f_m\)。
再考虑不相邻的情况,此时老鼠能够往上走,而往上走管理者可以选择把更高的地方向下的更优决策封住,或者把当前点向下的一个较优决策封住,这都是难以把控和简单地通过DP进行评估的。我们需要考虑一些不同的做法。
考虑一件事情,为什么我们不能够在老鼠往上走的时候得知管理者的操作,因为我们不知道是把当前的封住更优,还是上面有更优的决策。如果我们能够知道管理者应该封住的是答案大于多少的子树,那么就很好做了。注意到答案有二分性,于是考虑二分答案。
二分一个答案之后我们就只需要快速计算每一棵子树的答案。如果老鼠选择走进了这一棵子树,那么答案就是“这棵子树的DP值+当前点到根的所有点、不考虑向父亲的边的情况下的度数+1-[当前点不是起点]+从起点到这个点(不算这个点)封掉的子树个数”,+1是把当前向下的边清理,减的布尔变量表示向上过来的一条脏的边可以减少一次操作。如果当前点的子树中这样的子树数量很多以至于管理员用尽所有次数都封不完,那么当前答案可行;如果这样的子树数量大于等于二分值,那么也是可行的。
LOJ2482 CEOI2017 Mousetrap 二分答案、树形DP的更多相关文章
- HDU 3586 二分答案+树形DP判定
HDU 3586 『Link』HDU 3586 『Type』二分答案+树形DP判定 ✡Problem: 给定n个敌方据点,1为司令部,其他点各有一条边相连构成一棵树,每条边都有一个权值cost表示破坏 ...
- BZOJ_2097_[Usaco2010 Dec]Exercise 奶牛健美操_二分答案+树形DP
BZOJ_2097_[Usaco2010 Dec]Exercise 奶牛健美操_二分答案+树形DP Description Farmer John为了保持奶牛们的健康,让可怜的奶牛们不停在牧场之间 的 ...
- BZOJ1758[Wc2010]重建计划——分数规划+长链剖分+线段树+二分答案+树形DP
题目描述 输入 第一行包含一个正整数N,表示X国的城市个数. 第二行包含两个正整数L和U,表示政策要求的第一期重建方案中修建道路数的上下限 接下来的N-1行描述重建小组的原有方案,每行三个正整数Ai, ...
- hdu3586 Information Disturbing[二分答案+树形DP]
给定 n 个节点的树,边有权值.1 号点是根,除了 1 号点外的度数为 1 的节点是叶子.要求切断所有叶子和 1 号点之间的联系,切断一条边要花费这条边上权值对应的代价,要求总的代价不超过 m.在满足 ...
- 3月28日考试 题解(二分答案+树形DP+数学(高精))
前言:考试挂了很多分,难受…… --------------------- T1:防御 题意简述:给一条长度为$n$的序列,第$i$个数的值为$a[i]$.现让你将序列分成$m$段,且让和最小的一段尽 ...
- BZOJ4985 评分(二分答案+树形dp)
首先二分答案简化一下问题,现在只有0和1了,要求最后剩下的是1.再简化一下考虑没有已固定的位置怎么做.考虑每个位置由其合并到的位置连边,显然这样形成了一棵三叉树.设f[i]为使得某位置为1其子树至少要 ...
- BZOJ2282 SDOI2011消防/NOIP2007树网的核(二分答案+树形dp)
要求最大值最小容易想到二分答案.首先对每个点求出子树中与其最远的距离是多少,二分答案后就可以标记上一些必须在所选择路径中的点,并且这些点是不应存在祖先关系的.那么如果剩下的点数量>=3,显然该答 ...
- [CF752E]Santa Claus and Tangerines(二分答案,dp)
题目链接:http://codeforces.com/contest/752/problem/E 题意:给n个橘子,每个橘子a(i)片,要分给k个人,问每个人最多分多少片.每个橘子每次对半分,偶数的话 ...
- BZOJ4985 评分 二分答案、DP
传送门 题意:自己去看 答案满足单调性,所以考虑二分答案. 二分答案很好想,但是check并不是很好想. 考虑DP:设$f_i$表示队列中第$i$个人的分数$\geq \, mid$的代价,最开始$N ...
随机推荐
- 特征缩放(Feature Scaling)
特征缩放的几种方法: (1)最大最小值归一化(min-max normalization):将数值范围缩放到 [0, 1] 区间里 (2)均值归一化(mean normalization):将数值范围 ...
- USACO 2009 Open 干草塔 Tower of Hay
USACO 2009 Open 干草塔 Tower of Hay Description 为了调整电灯亮度,贝西要用干草包堆出一座塔,然后爬到牛棚顶去把灯泡换掉.干草 包会从传送带上运来,共会出现N包 ...
- win7安装composer Failed to decode zlib stream
今天学习php的时候想安装一下composer,刚开始采用的是exe文件的安装方式,可是安装了好几次都没有安装成功,如下图: 可能还有其他的一些错误,所以这里我就换了一个方式安装,就是自己手动来安装c ...
- 分享一些好用的 Chrome 扩展
阅读本文大概需要 2.8 分钟. 前言 使用浏览器扩展程序可以使你的工作效率提高数倍不止,那么下面我就向大家分享一下我日常使用的扩展,可能大多数扩展大家都已经在使用了,不过也难免有一两个是你不知道的. ...
- On-line fusion of trackers for single-object tracking
On-line fusion of trackers for single-object tracking Pattern Recognition, 2018 - Elsevier 2019-08-1 ...
- FFMPEG Tips 如何提取码流的基本信息
原文连接: https://zhuanlan.zhihu.com/p/23448271 1. 码流中的哪些信息值得关注 ? [ ] 是否包含:音频.视频 [ ] 码流的封装格式 [ ] 视频的编码格式 ...
- 将已经存在的项目提交到gitlab的新分支中
将已经存在的项目提交到gitlab中 在gitlab中新增用户jack 登录jack这个git用户,然后创建仓库 mxonline 已经写好了部分功能的项目存放在 D:\>cd D:\pytho ...
- Python 初级 6 循环
一.一个简单的for循环 1 重复做相同的事 for looper in [1, 2, 3, 4, 5]: print("hello") 1 looper的值从1开始, 所以loo ...
- [Bayes] Metropolis-Hastings Algorithm
[Bayes] prod: M-H: Independence Sampler for Posterior Sampling dchisq gives the density, ...
- [LeetCode] 257. Binary Tree Paths 二叉树路径
Given a binary tree, return all root-to-leaf paths. For example, given the following binary tree: 1 ...