随笔分类 -  二分答案

摘要:##题目传送门 题面里有最大值最小,所以直接想到二分答案.在检验答案时,如果dfs爆搜,会得46分. 对于题目中的两个限制:金钱和血量.金钱我们可以二分答案处理,而血量我们希望消耗的越少越好,最短路.最后和0比较看能不能活着到终点. 这道题不卡spfa. ###46分代码 #include<iost 阅读全文
posted @ 2020-10-25 23:09 Mr^Simon 阅读(73) 评论(0) 推荐(0)
摘要:题目传送门 中文翻译: 给定一颗无向带权树,要切断所有叶子节点和根节点的联系,每次切断的费用不能超过上限 Limit,问在保证 总费用 <=m 的情况下最小的 Limit 解题思路: f[i]表示以i为根的树的最佳答案,加二分答案. AC代码: #include<iostream> #include 阅读全文
posted @ 2020-01-19 22:16 Mr^Simon 阅读(133) 评论(0) 推荐(0)
摘要:题目传送门 解题思路: 二分答案,按照题目要求模拟验证,但数据太毒,要用long double. AC代码: 阅读全文
posted @ 2019-11-01 23:01 Mr^Simon 阅读(216) 评论(0) 推荐(0)
摘要:题目传送门 解题思路: 二分答案,然后bfs验证,如果从一个路标可以达到其它所有路标,则答案可行.知道找到最佳答案. AC代码: 阅读全文
posted @ 2019-11-01 22:58 Mr^Simon 阅读(171) 评论(0) 推荐(0)
摘要:题目传送门 解题思路: 人生中第一道二分答案的题,小车问题那道不算. 二分枚举一个答案,验证,如果小于当前枚举答案值,就需要去掉石头,看最后如果比m大,说明答案大了,否则就是小了或正好,知道答案区间l和r长度小于0时,就是答案. AC代码: //NOIP提高2015 Day2 T1 阅读全文
posted @ 2019-10-27 22:35 Mr^Simon 阅读(124) 评论(0) 推荐(0)
摘要:题目传送门 解题思路: 首先,每个人都要做一次车,而且两个人要同时到达,这样才能使总时间最短。 那么,我们设起点为A,终点为B,小车先带甲开到C点后甲下车走到B点,同时小车掉头与已经走到D点的乙相向而行,相遇于点E,最后小车带乙向B开去,和甲同时到达。 然后我们就二分C点,直到误差小于某个值即可。 阅读全文
posted @ 2019-07-30 08:23 Mr^Simon 阅读(178) 评论(0) 推荐(0)