
二分
FeBr2
(๑•̀ㅂ•́)و✧
展开
-
二分——POJ 3579 Median
题目链接:http://poj.org/problem?id=3579 题意:给出N个数,求这个N个数的所有间隔中的中位数,如果有偶数个,则取中间两个中的前面那一个。 分析:因为N的取值最大为1E5,所以我们不能直接求出所有间隔来算。那么第一个想到的就是二分来做,因为间隔的取值范围我们可以得知,所以我们在这个范围内二分查找,对于每一个值,我们再通过O(n)的查找确定小于等于它的间隔数量有多少,将它与原创 2017-04-04 21:02:08 · 449 阅读 · 0 评论 -
二分——GDUT #C 进击的调查兵团
题目链接: http://gdutcode.sinaapp.com/problem.php?cid=1054&pid=2 题意: 每次查询A数组的区间1和B数组的区间2的并的第K小,给出的数组都是递增排好的 分析:如果没有后面那个条件,这道题就需要用到复杂的数据结构来搞了。不过既然是排好序的,我们就可以直接二分搜索。取L为两个区间的最小值,R为两个区间的最大值,那么在这个范围(L,R)内二分搜索第K原创 2017-03-22 11:58:44 · 378 阅读 · 0 评论 -
二分——Codeforces Round #377 (Div. 2) D
题目链接:http://codeforces.com/problemset/problem/732/D 题意: 先判断能否通过考试,再求出通过考试所需要的最小天数 分析: 没有明显的贪心规律,我们只能想到大力搜,当然不是挨个搜,所以我们可以二分试试: 先设定 L=1, R = N,每次搜中间值能否满足,能满足,R = mid-1,否则 L = mid +1 注意:判定能否通过时,需要判断一下有没有考原创 2017-03-02 20:33:43 · 282 阅读 · 0 评论 -
倍增二分——玲珑学院OJ #1112
题目链接: http://www.ifrog.cc/acm/problem/1112?contest=1015&no=1 题意: 看链接吧 分析:一个很容易想到的做法就是二分找到每一个刚好超过M的分界点,但是每次排序用时是nlognnlogn的复杂度,最后可能达到n2lognn^2logn,所以我们才用一种先倍增再二分的方法,即缩小二分范围:每次在左端点L上增加2k2^k,直到超过了M,那么二分的范原创 2017-04-02 12:37:39 · 475 阅读 · 0 评论