
二分
白影独角兽的技能,健步,直接半血。虽然命中率有点低哈哈哈
van之风
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
P1182 数列分段 Section II
这种题固有的套路,一看到什么最大值最小,最小值最大。想都不用想,多半是贪心+二分,和前面几道题一样。但是二分的区间一定要设置好!!!就这题而言left=max(a[i],left)为a[1]–a[N]其中的最大值,而right则为所有a[i]的和,如果将left设置为1,第四个点会wa掉,所以做这种题目一定要把区间设置正确。思路:mid=(left+right )/2,然后在最大值的最小值为假定...原创 2020-03-30 13:45:52 · 498 阅读 · 0 评论 -
P3853 [TJOI2007]路标设置
说明/提示 公路原来只在起点和终点处有两个路标,现在允许新增一个路标,应该把新路标设在距起点50或51个单位距离处,这样能达到最小的空旷指数51。 50%的数据中,2 ≤ N ≤100,0 ≤K ≤100 100%的数据中,2 ≤N ≤100000, 0 ≤K ≤100000 100%的数据中,0 < L ≤10000000 这道题有点类似之前的那道跳石头,跳石头是移动M块石头使得最短的最长,而...原创 2020-03-29 21:27:43 · 263 阅读 · 0 评论 -
P2678 跳石头
题目背景 一年一度的“跳石头”比赛又要开始了! 题目描述 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有 NN 块岩石(不含起点和终点的岩石)。在比赛过程中,选手们将从起点出发,每一步跳向相邻的岩石,直至到达终点。 为了提高比赛难度,组委会计划移走一些岩石,使得选手们在比赛过程中的最短跳跃距离尽可能长。由于预算限制,组委会至多从起点和终点之间移走 MM 块岩石(不能移走起点和终点的岩石)。 输入格式 第一行包含三个整数 L原创 2020-03-29 14:25:22 · 272 阅读 · 0 评论 -
P2440 木材加工
这种题一看就是二分来做,思路也非常简单~,因为题目说了。在满足切割后的木头等于K时,尽可能切割出长一点的木头,所以我们对最长的木头来开刀,不停的二分,记录每次满足要求的结果,最后left>right 时就退出循环,AC代码如下:~ #include <iostream> #include <algorithm> typedef long long int ll; i...原创 2020-03-26 13:10:27 · 561 阅读 · 0 评论 -
P1678 烦恼的高考志愿
这道题很显然,直接二分即可,代码也很好理解~ 思路:将a[i]从小到大排序(学校的录取线),然后循环遍历b[i],找到第一个大于等于a[i]的元素,如果没有就将指向最后一个,如果是第一个。那就直接加上两者之差即可fabs(a[1]-b[i]),否则比较fabs(b[i]-a[res])和fabs(b[i]-a[res-1]) 取其中的最小值即可 之前有两个点一直A不了,一定要注意。如果没有比b[...原创 2020-03-26 09:26:10 · 400 阅读 · 0 评论 -
P1873 砍树
这道题是一道典型的二分。 思路:找到其中的最高的一颗树,对其二分。每次判断mid高度的时候,所有数目的截距之和是否大于等于需要的木长M,如果是大于等于,那就记录下此时的高度,一直循环,直到top<bottom为止 #include <iostream> #include <algorithm> using namespace std; typedef long l...原创 2020-03-25 18:49:36 · 211 阅读 · 0 评论 -
P1102 A-B 数对
这道题,很明显不能暴力枚举,一开始我采用枚举的算法,但是查找是用的二分,果不其然。WA掉了两个点 ~~ **下面是84分的代码 **:~~ #include <iostream> #include <algorithm> typedef long long int ll; using namespace std; int main() { ...原创 2020-03-25 13:54:58 · 137 阅读 · 0 评论 -
P2249 【深基13.例1】查找
很简单的题目qaq直接手写二分原创 2020-03-24 16:41:49 · 262 阅读 · 0 评论