随笔分类 - middle 二分,常见技巧
摘要:条件a+b == d-c,O(n*n)枚举出所有的形如a+b的和,然后从大到小枚举d,在枚举c,二分找d-c。主要是要用容斥排除c和d出现在和中,详细的过程见注释。复杂度为O(n^2log(n^2))。/************************************************...
阅读全文
摘要:题意:求N个元素的非空子集和的绝对值最接近0,在此条件下子集大小尽量小,N≤35。N/2是17和18,217和218都是1e5的数量级,是可以枚举的。枚举后得到的集合记为P,Q,ans要么单独在P或者Q中,要么是两者的和。把Q中所有元素反号以后,枚举P中元素pi,就是找一个最接近pi的qj。所以只要...
阅读全文
摘要:模型是个线性模2方程组。高斯消元的话可能解不唯一,要找独立变元。但是不难看出,枚举左端点按下的状态,之后可以影响端点就只有一个变量了,根据端点递推了,然后检查。(写的时候想的是枚举左右端点/*******************************************************...
阅读全文
摘要:n虽然高达1e14,但是满足条件的s不会超过sqrt(n)。可以想到在O(sqrt(n))的复杂度下,求一个[1,sqrt(n)]连续区间和为n的方案。/********************************************************** ---...
阅读全文
摘要:素数非负使得前缀和单调,于是对于固定的区间尾部j,头部i也是单调的,区间和更新的时候维护一下就好。/********************************************************** ------------------ ...
阅读全文
摘要:题意:询问一个静态序列的连续区间和绝对值最接近t的下标。分析:由于询问的是绝对值,可以用前缀和相减得到区间和,并且和位置前后没有关系。于是把记录下标信息以后把前缀和排序枚举大的前缀pj,pj-pi ≈t,满足条件的:有pj-t的plower_bound以及plower_bound-1。而pj-t也是...
阅读全文
摘要:高度之间的关系可以改写成一个递推式:Hi+1 = 2Hi - Hi-1 + 2。Hn和Hi之间是正相关的。思路见注释。(一开始是那么想的,其实不用矩阵快速幂,二分H2也可以。/********************************************************** ...
阅读全文
摘要:二分kth,答案满足的条件为:m≤ 小于等于x的值数cntx。x和cntx单调不减,随着x增大,条件成立可表示为:0001111。本地打一个小型的表可以发现列编号j固定时候,目标函数f(i,j)似乎具有单调性。变形,f(i,j) = (i+100000+j)*i + j2 -100000,可以看出确...
阅读全文
摘要:二分中间值x,x和大于等于x的值的数量cnt具有单调性,随着x增大,满足cntx #include#include#include#include#include#include#include#include#include#include#include#includeusing namespa...
阅读全文
摘要:有K根线是免费的。如果最大花费已知为mx,那么长度大于mx的线都是应该是免费的。线数量表示为d,那么d≤ K。mx越小,d越大,随着mx增大,可行性:00000111111。这就满足了决策单调性。把免费的线的权值设置为1,其他为0,判断mx的可行就是1到N是否有一条权值不超过K的路径。看样例猜题意系...
阅读全文
摘要:去水时间越长,干的衣服就越多,因此具有单调性,二分时间t。把放在暖气片上去水看出是加快某件衣服的烘干速度,取k-1作为增量,当t确定的时候,相当于有t次加速去水的机会,贪心选取不能自然干燥的衣服。/***************************************************...
阅读全文
摘要:一开始是往二分上去想的,如果risk是x,题目要求则可以转化为一个不等式,Si + x >= sigma Wj ,j表示安排在i号牛上面的牛的编号。如果考虑最下面的牛那么就可以写成 Si + x ≥ sum W - Wi,为了方便处理把i号牛的信息合并到一起→ Si + Wi + x ≥sum W。...
阅读全文