二分
verdin黄大锤
afo啦!
展开
-
CF460C Present
题目:Present思路: 二分答案+贪心。 注意在LL范围类二分。代码:#include<bits/stdc++.h>using namespace std;#define maxn 100000#define ll long longint n,m,w;int a[maxn*2+5]= {0};ll tg[maxn*2+5]= {0};boo...原创 2018-08-10 15:45:33 · 276 阅读 · 0 评论 -
noip 2018 洛谷 P5021 赛道修建
题目:赛道修建思路:二分答案。judge时,令节点1为根节点,dfs求解。安利代码:#include<bits/stdc++.h>using namespace std;#define maxn 50000#define read(x) scanf("%d",&x)int cnt[maxn+5],f[maxn+5];struct Edge{ int...原创 2019-03-26 18:13:37 · 279 阅读 · 0 评论 -
CF1103B Game with modulo
题目:CF1103B Game with modulo思路:这是一道交互题。考虑询问两个数a<b,回答是’x’当且仅当ans∈(a,b],注意是左开右闭。然后倍增,找出一个包含ans的区间,再在这个区间上二分查询答案。复杂度在O(log a)O( log\ a )O(log a)左右?代码:#include<bits/stdc++.h>us...原创 2019-01-26 20:18:43 · 308 阅读 · 0 评论 -
2018/10/30 膜你赛 神光
题目:题目描述亮亮成功地念出了咒语,石门缓缓地自动移开,一道道绚丽的神光从城堡内激射而出。亮亮好奇而又兴奋地走入了城堡中,迎面有一座极长的魔法阵。 魔法阵可以看作一条直线,它被均匀地分成了 1 000 000 000 个位置,一个位置可以看成是一个格子。有些位置上筑有法坛,一共 N 座。亮亮只有破了眼前 的魔法阵,才能继续前进,而欲破法阵,必须毁掉所有的法坛。亮亮身前有两根法杖:一根颜色血...原创 2018-10-30 21:04:01 · 362 阅读 · 0 评论 -
noip2015 P2680 运输计划
题目:运输计划思路:嗯首先一条路径(x,y)可以拆分成(x,lca)和(lca,y)两条。所以在处理前先计算出每个询问(x,y)的lca,然后处理出路径长。二分最少时间mid,保留那些大于mid的路径。然后进行树上差分,即使cnt[lca]-=2,cnt[x]++,cnt[y]++。然后根据dfs序跑差分就好。代码:#include<bits/stdc++.h>usi...原创 2018-10-19 22:04:50 · 129 阅读 · 0 评论 -
Codeforces Round #510 (Div. 2) D. Petya and Array (codeforces 1042 D)
题目:Petya and Array题意:给出一个序列a,求区间[i,j]的个数,使得∑k=ija[k]\sum_{k=i}^{j} a[k]∑k=ija[k]的值小于t。思路:今天考试的一道题——在完成了分配任务之后,西部314来到了楼兰古城的西部。相传很久以前这片土地上(比楼兰古城还早)生活着两个部落,一个部落崇拜尖刀(‘V’),一个部落崇拜铁锹(‘∧’),他们分别用V和∧的形状...原创 2018-09-18 21:35:09 · 576 阅读 · 0 评论 -
洛谷 P1565 牛宫
题目:牛宫思路: 咳咳,先放个提交记录…… 嗯再来个mjy0724的思路: 然后就没我什么事了 有这么几点需要注意的地方: 1、vector一定不能作为参数传进函数,会T到飞起,亲测100-&gt;50 2、第一列数要单独判断 3、前缀和的处理,[i,j]的字段和大于0的条件是sum[j]&gt;sum[i-1]而非sum[j]&gt;sum[i]数据生成器:#i...原创 2018-08-13 22:15:18 · 269 阅读 · 0 评论 -
Astar2018 初赛R2T4 p1m2
题目:度度熊很喜欢数组!! 我们称一个整数数组为稳定的,若且唯若其同时符合以下两个条件: 1. 数组里面的元素都是非负整数。 2. 数组里面最大的元素跟最小的元素的差值不超过 1。 举例而言,[1,2,1,2] 是稳定的,而 [−1,0,−1] 跟 [1,2,3] 都不是。 现在,定义一个在整数数组进行的操作: * 选择数组中两个不同的元素 a 以及 b,将 a 减去...原创 2018-08-15 20:15:37 · 233 阅读 · 0 评论 -
bzoj 2654 tree
题目:tree思路: 假设给所有百边加上一个值mid,此时刚好的最小生成树用了Need条百边,那么此时所求的解为s-mid*need,其中s为最小生成树大小。 此时二分mid即可。 只是不知道为什么代码比别人的长很多Orz……代码:#include<bits/stdc++.h>using namespace std;#define maxn 50000#def...原创 2018-08-15 18:16:06 · 126 阅读 · 0 评论 -
AGC006D AT2165 Median Pyramid Hard
题目:Median Pyramid Hard思路: 二分金字塔顶的数字mid,将大于等于mid的数看做1,小于mid的数看做0。 对于此时的01序列,假设有两相邻数字相同,那么塔顶的数等于离中心最近的相邻数字对的数。 如果没有两数相邻,塔顶的数等于最左边的数(最右边的数也可以)。数据生成器:#include&lt;bits/stdc++.h&gt;using namespa...原创 2018-08-10 22:37:33 · 232 阅读 · 0 评论 -
CF954G Castle Defense
题目:Castle Defense思路: 二分+贪心。注意LL的应用。代码:#include&amp;lt;bits/stdc++.h&amp;gt;using namespace std;#define maxn 500000#define ll long long#define inf ((1LL)&amp;lt;&amp;lt;60)ll n,r,k;ll a[maxn*3+5],c[ma...原创 2018-08-10 20:29:05 · 424 阅读 · 0 评论 -
【19/04/18 膜赛】大逃亡(escape)
题目:题目描述给出数字N(1<=N<=10000),X(1<=x<=1000),Y(1<=Y<=1000),代表有N个敌人分布一个X行Y列的矩阵上,矩形的行号从0到X-1,列号从0到Y-1再给出四个数字x1,y1,x2,y2,代表你要从点(x1,y1)移到(x2,y2)。在移动的过程中你当然希望离敌人的距离的最小值最大化,现在请求出这个值最大可以为多少,以及...原创 2019-04-18 20:34:47 · 328 阅读 · 0 评论