二分
里阿奴摩西
这个作者很懒,什么都没留下…
展开
-
[二分答案 单调队列] BZOJ 3316 JC loves Mkk
%%%PoPoQQQ:http://blog.csdn.net/popoqqq/article/details/43059527看到平均值最大果断二分答案看到长度[L,R]果断单调队列对数组维护一个前缀和,对前缀和维护单调递增的单调队列每扫过一个数sum[i],将sum[i-L]加入单调队列,再把距离i超过R的点删掉长度为偶数?对奇数位置和偶数位原创 2016-04-13 17:31:02 · 773 阅读 · 0 评论 -
[二分 贪心 || 树的划分] NOI2003 Day 2 Berry Test6~Test9
论文:鬲融--浅谈特殊穷举思想的应用论文:贝小辉--浅析树的划分问题并不会打树的划分算法#include#include#include#include#define cl(x) memset(x,0,sizeof(x))using namespace std;inline char nc(){ static char buf[100000原创 2016-12-09 14:02:28 · 329 阅读 · 0 评论 -
[二分答案 2-SAT验证 前后缀优化建图] Codeforces 587D #326 (Div. 1) D. Duff in Mafia
大概题意是删去一组边 这组边是一个匹配 剩下的边 同一颜色的一组边也形成一个匹配 使删去的边最大值最小 这个考虑二分答案 然后检验大于答案的边必然保留同一个点连的同一颜色的边最多保留一条同一个点连的边最多删除一条这个某些边集最多删一条怎么处理 把他排成一排 那么一个点选了 他的前面都不能选 后面都不能选 那么建前后缀使得边数降到O(n)O(n) 要是裸建图的话是O(n2)O(n^2)原创 2017-02-07 16:49:13 · 997 阅读 · 0 评论 -
[二分答案 2-SAT验证 前缀后缀优化建图 线段树优化建图] Codeforces gym 100159 Facebook Hacker Cup 2012 I. Unfriending
二分答案 我们需要解决 对于一个点选了 一段不能选 这个裸建图肯定不行 那么我们用前后缀和线段树 优化建图 具体看代码 或 [二分答案 2-SAT验证 前后缀优化建图] Codeforces 587D #326 (Div. 1) D. Duff in Mafia 有一个细节 当冲突的个数超过一定大的值时是不可能有解的 这里dls教我说1.2∗1061.2*10^6这个题只有两个点 一个还是原创 2017-02-07 16:58:40 · 1132 阅读 · 0 评论 -
[凸包最大内接圆 二分 半平面交] POJ 3525 Most Distant Point from the Sea
二分答案 然后半平面向内缩 判断是否有交#include<cstdio>#include<cstdlib>#include<algorithm>#include<cmath>using namespace std;typedef double ld;const double eps=1e-7;inline int sgn(ld a){ if (fabs(a)<eps) return 0原创 2017-02-16 12:07:08 · 474 阅读 · 0 评论 -
[二分 后缀自动机 单调队列优化DP] BZOJ 2806 [Ctsc2012]Cheat
先在后缀自动机上匹配 求出mat[i]表示作文的每个位置i为结尾最长能匹配多长二分L 设f[i]表示前i个字符熟悉的部分最多有多长 那么f[i]=max(f[i-1],f[j]+i-j) 其中j要满足i-j>=L&&i-j+1<=mat[i] 得i-mat[i]<=j<=i-L 而mat[i]+1>=mat[i+1] 得i+1-mat[i+1]>=i-mat[i] 所以i-mat[i]原创 2017-01-28 21:29:18 · 378 阅读 · 0 评论 -
[牛顿法 || 二分] BZOJ 1213 [HNOI2004]高精度开根 & 51Nod 1166 大数开平方
可以看贴吧的讨论:http://tieba.baidu.com/p/2873435742牛顿法 %%%hqztrueimport sysm=int(input())n=int(input())if n==0: print 0 sys.exit()_n=n;len=0while _n>0: _n/=10;len+=1base=300wei=len/mno原创 2016-07-08 19:50:24 · 1453 阅读 · 0 评论 -
[二分答案 上下界费用流验证] 计蒜客 91 地铁 & HDU 5263 平衡大师
这道题居心不良 标签贪心 怎么写贪心都不对 二分答案 然后用网络流验证 就是杜老师说的这样咯#include<cstdio>#include<cstdlib>#include<algorithm>#include<cstring>#define cl(x) memset(x,0,sizeof(x))using namespace std;inline char nc(){ stat原创 2017-02-07 17:13:22 · 925 阅读 · 0 评论 -
[贪心 模拟 + 二分答案 DP] BZOJ 1181 [CROATIAN2009]IZBROI选举
听说这是种有理有据的席位分配方法? 求最大值 可以直接把剩下的票全给他 模拟一发就好了 求最小值 就需要二分答案加DP检验了 我们用fi,jf_{i,j}表示不包括当前党派的前ii个党派总共占据jj个席位最少还要多少选票 只要检验 f20,m−mid≤V−totf_{20,m-mid} \leq V-tot 就行了 2020是因为最多有2020个党派有席位 因为5%5\%的限制#inclu原创 2017-03-21 23:47:44 · 585 阅读 · 0 评论 -
[二分 交互] Codeforces 809B Round #415 (Div. 1) B. Glad to see you!
二分+交互 四个字够了吧#include<cstdio>#include<cstdlib>#include<algorithm>#include<iostream>#include<string>using namespace std;inline bool query(int x,int y){ printf("1 %d %d\n",x,y); fflush(stdout); s原创 2017-05-23 21:26:17 · 1175 阅读 · 0 评论 -
[二分 几何] BZOJ 2289 【POJ Challenge】圆,圆,圆
%%%fhq http://fanhq666.blog.163.com/blog/static/81943426201131691852787/这题的算法:二分相交部分的横坐标。用一条直线x=x0和所有圆计算交点,如果有的圆不和它相交,易知交集和直线的左右关系。如果所有圆和直线的相交的部分的交集非空,那么输出yes。如果某两个圆和直线的相交部分不相交,那么这两个圆的交点原创 2016-07-28 08:32:57 · 810 阅读 · 0 评论 -
[模拟退火 二分答案] BZOJ 1038 [ZJOI2008]瞭望塔
正解半平面交,%%% PoPoQQQ : http://blog.csdn.net/popoqqq/article/details/39340759"确定瞭望塔的高度的时候我们选择二分处理 对于二分的每一个值 我们把折线上的端点从左到右枚举 瞭望塔的塔尖到每个端点的连线必须从左到右逆时针顺序 否则就会被遮挡"#include#include#include#include#in原创 2016-04-16 13:17:12 · 667 阅读 · 0 评论 -
[二分答案+对偶图 || 三角剖分] BZOJ 3007 拯救小云公主 && BZOJ 4219 跑得比谁都快
3007是小数据 可二分答案:http://blog.csdn.net/popoqqq/article/details/442248154219是大数据 三角剖分 平面欧几里德最小生成树:http://trinkle.is-programmer.com/2015/7/13/bzoj-3007.102710.html3007的代码 4219不会打... 先挖个坑#incl原创 2016-04-19 19:50:40 · 1299 阅读 · 0 评论 -
[二分答案 树链剖分] BZOJ 4326 NOIP2015 运输计划
考虑二分把所有超过mid的链取交集,然后取交集上最长的边权赋0,判断#include#include#include#define V G[p].vusing namespace std;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+frea原创 2016-04-22 10:19:45 · 654 阅读 · 0 评论 -
[二分答案 物理 数学] BZOJ 3695 滑行
一直知道OI会出数学题 没想到还有物理题 物理差成渣什么光路最速原理折射角sin之比等于速度比什么的知道这个然后二分答案就好了#include#include#include#define PI acos(-1.0)#define eps 1e-12using namespace std;inline char nc(){ static char原创 2016-05-08 12:59:26 · 621 阅读 · 0 评论 -
[二分] BZOJ 4590 [Shoi2015]自动刷题机
一开始还没想到单调 后来hint启发我这是单调的 233#include #include #include using namespace std;typedef long long ll;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+f原创 2016-06-29 16:31:31 · 439 阅读 · 0 评论 -
[二分答案 随机增量法] BZOJ 2280 [Poi2011]Plot
狂T 只能去%Po姐 http://blog.csdn.net/popoqqq/article/details/45100989直接上二分是不可取的,因为我们要求m次,如果每次都验证一遍[1,n/2]直接就炸了我们可以这么搞首先判断[pos,pos+1-1]是否满足要求然后判断[pos,pos+2-1]是否满足要求然后判断[pos,pos+4-1原创 2016-07-12 19:39:18 · 716 阅读 · 0 评论 -
[主席树 二分答案] BZOJ 2653 middle
题解:http://blog.csdn.net/acm_cxlove/article/details/8566093要求中位数最大,首先二分中位数,然后判断可行不可行。判断X可行不可行,对于区间内的数,凡是>=X的标为1,否则为-1。这样的话,求一次最大区间和如果大于等于0,则说明可行。#include#include#includeu原创 2016-05-13 21:53:27 · 430 阅读 · 0 评论 -
[二分答案 贪心] BZOJ 3248 [ioi2013]robots
考虑二分答案,这样只需检验m分钟内是否可以把所有玩具收拾好。将每个玩具i与坐标(W[i]:重量, S[i]:体积)对应,这样每个弱机器人可以收拾某一横坐标以左的玩具,每个小机器人可以收拾某一纵坐标以下的玩具。从右至左添加这些玩具,一旦某一时刻某个弱机器人可以收拾当前玩具,则它可以收拾之后的所有玩具。因此我们应尽量保留弱机器人,即优先使用小机器人。选择小机器人时,当然应该优先选择可以收拾原创 2016-07-05 18:43:03 · 910 阅读 · 0 评论 -
[扫描线 线段树上二分] BZOJ 4411 [Usaco2016 Feb]Load balancing
第一维扫描线第二维线段树上二分好久之前的代码了#include#include#include#includeusing namespace std;inline char nc(){ static char buf[100000],*p1=buf,*p2=buf; if (p1==p2) { p2=(p1=buf)+fread(buf,1,10000,std原创 2016-10-23 12:14:47 · 654 阅读 · 0 评论 -
[贪心 二分] 2016 计蒜之道 复赛 B. 联想专卖店大促销
注意相邻不能相同 意味着最大的不超过其余两个的和+1可以发现 三个礼包的交集是1个a 1个b 剩余分别对应1个a 1个b 1个c那么我们二分 是否x+y+z>=mid然后验证#include#include#includeusing namespace std;inline char nc(){ static char buf[100000],*p1=bu原创 2016-11-09 10:33:18 · 387 阅读 · 0 评论 -
[Kruscal 二分] BZOJ 2654 tree
Orz hzwer给白色边都加上一个值,做mst会使得选取的白边数量减少,所以可以二分它hillan 说 此题由于数据有问题 并没有保证一定能生成有need条白色边的生成树所以大家二分答案的时候全加上Mid 之后再减去Mid*(n-1-ned)#include#include#includeusing namespace std; inline ch原创 2016-06-24 23:35:53 · 481 阅读 · 0 评论