{题解}[jzoj4328]NOIP2015提高组Day2 运输计划
2016-04-20 15:35
295 查看
题目
坑…
比赛时看得不太懂,乱坑了5分回家…
正解:
一看到最大值最小,就有二分Ans
由于它有n个点,n-1条双向边,还保证互相连通,所以,某犇用脚趾头想到了这一点.
那么,我们所需要优化的那一条边,必定是在最长的那一条“运输计划”上,不然就对于答案没有任何贡献了。
于是乎,我们可以把这一条定义为一条链,而每个点又延伸出它的子树。
而假设要删去(x,y),那么答案将会更新为:不经过这条边的最大值,与经过这条边的最大值(即这条链)。
后者容易计算,前者就麻烦许多:
时间复杂度(主程序):O(n)
坑…
比赛时看得不太懂,乱坑了5分回家…
正解:
一看到最大值最小,就有二分Ans
由于它有n个点,n-1条双向边,还保证互相连通,所以,某犇用脚趾头想到了这一点.
那么,我们所需要优化的那一条边,必定是在最长的那一条“运输计划”上,不然就对于答案没有任何贡献了。
于是乎,我们可以把这一条定义为一条链,而每个点又延伸出它的子树。
而假设要删去(x,y),那么答案将会更新为:不经过这条边的最大值,与经过这条边的最大值(即这条链)。
后者容易计算,前者就麻烦许多:
时间复杂度(主程序):O(n)
相关文章推荐
- Eclipse打jar包在控制台执行
- 欢迎使用CSDN-markdown编辑器
- LeetCode 102. Binary Tree Level Order Traversal
- Android视图状态及重绘流程分析,带你一步步深入了解View(三)
- 使用jQuery+PHP+Mysql实现抽奖程序
- Windows键盘钩子
- 局部变量与实例变量---一道c#面试题想到的
- 【LeetCode-342】Power of Four
- 进程间8种通信方式详解
- 读书笔记—View的工作原理
- 常用端口号及对应服务
- java基础笔记之static
- 邮件被暴力破解邮件网关如何解决
- 全面解析Linux数字文件权限
- Android LruCache源码详解
- Redis+Spring缓存实例(windows环境)
- Python 解析base64数据到opencv图像
- 为什么必须是final的呢?
- NHB网络心跳丢失的模拟过程分析
- 模态跳转过后,依然有导航栏