二分,三分
人1我100,人100我1w。
---------------------------kuangbin
scau_sleep(今天写bug了吗?
1.一个退役acmer,老年选手
2. 今天喝水了吗?
3. 会写暴力~比不会写强~比不会写优秀
4.不会三分,喜提铁牌。
5. 失败一次不算什么,胸针为了拯救真由里 和 助手。重来3000多次都可以,那我失败几次,又算什么。(命运石之门)
-------如果说这是命运石之门的意志的话
展开
-
AtCoder Beginner Contest 271 F - XOR on Grid Path(meet in the middle)
abc271 F - XOR on Grid Path, 暴搜原创 2022-10-01 21:59:49 · 395 阅读 · 0 评论 -
再战三分,去年三分打铁,这次温习三分
刚刚切出了arc的三分,,,虽然是水题。。。。2021/6/1220:46学习链接1234原创 2021-06-12 20:47:39 · 68 阅读 · 0 评论 -
AtCoder Beginner Contest 202 E - Count Descendants dfs序&&二分
赛时没调出来。。。。。。。。。。。。。。。。。。。。。。。。。。原创 2021-05-22 21:55:30 · 154 阅读 · 0 评论 -
SCAU2021春季个人排位赛第六场 Programming Contest
A Programming Contest tag: meet in the middle(这个思想可以很好的减少暴搜的时间复杂度)分出两个集合,来减少暴搜的时间复杂度。实现1:对于分出一个集合后,可以保存第一个的结果,之后二分去第二个集合中check。实现2:每个集合的计算,直接用双指针达到O(2n)O(2^n)O(2n),合并时候,也用双指针O(2n)O(2^n)O(2n)auto i = A.rbegin();//i++//这里的指针自增,是指向下一个,切记!!!!!!!!!!!实原创 2021-04-24 19:34:54 · 171 阅读 · 0 评论 -
日后学习。。。。。
AC(博主的纯数学做法)/*皮卡丘冲鸭!へ /| /\7 ∠_/ / │ / / │ Z _,< / /`ヽ │ ヽ / 〉 Y ` / / イ● 、 ● ⊂⊃〈 / () へ | \〈 >ー 、_ ィ │ // / へ / ノ<| \\ ヽ_ノ (_/ │// 7 |/ >―r ̄ ̄`ー―_*/#include <iostream>#include <原创 2021-01-31 20:21:03 · 167 阅读 · 0 评论 -
牛客IOI周赛22-普及组 (被自己菜到了)
后话,一个261026^{10}2610会爆longlong吗??????????我真的qwqwqw…qwq(赛中走上了高精度,一直wa到哭qwq)A战争尾声题意:有n个点(x,y)且范围都是(1,200)(1,200)(1,200),现在要你找到一个点,使得它到所有其他点的距离最小。n的范围也只有200。输出:最小的点思路:由于n小,直接暴力枚举答案即可。(根据横纵坐标即可)AC# include <bits/stdc++.h># define fi first#原创 2021-01-23 00:22:45 · 175 阅读 · 1 评论 -
寒假每日一题day7 1227. 分巧克力(整数二分答案,最大的最小值,模板题)
1227. 分巧克力、题意:给你n个巧克力,每个巧克力有长宽。现在,要求你进行切割,每次切割只能切出一个正方形,问:是否能切出k个巧克力。且使得正方形的边长尽可能的大。思路:对正方形的边长进行二分。AC# include <bits/stdc++.h>using namespace std;const int N = 100010;int a[N], b[N];int n, m;bool check(int x){ int res = 0;原创 2021-01-15 12:22:40 · 187 阅读 · 1 评论 -
Cable master POJ - 1064(浮点数二分答案 wa了好久,qwq,好多细节都没注意到)
Cable master POJ - 1064题意:就是减绳子,不过数据是输入浮点类型的绳子。本题输入单位是m。假如找不到答案,最小的分割单位是cm,所以要对答案进行处理即可。具体看代码(假如扩大成int,就不用处理了)反思:一直wa。这里做一下浮点数二分的总结。假如数据量小的话,可以先变成整数再二分。对于题目假如说保留 n位小数,那么eps一般设置为 1e(−n−2)1e(-n-2)1e(−n−2)更特别地,其实可以直接计算100(可能不是100次,具体多少次,根据题目而定)次得出答案。原创 2021-01-14 16:40:30 · 125 阅读 · 0 评论 -
寒假每日一题day6 680. 剪绳子(浮点数二分答案,最大的最小值)
680. 剪绳子题意:给你n个绳子,要求你分割处m个长度相同的原创 2021-01-14 11:15:05 · 164 阅读 · 0 评论 -
Processor UVA - 1422(二分答案 + 枚举时间&&优先队列维护)
Processor UVA - 1422 题意:给你n个任务,每个任务有开始时间和结束时间,以及工作量。一个任务执行时,可以分多次执行。机器有一个执行速度,求最小的最大速度。思路:题意,就是二分答案。本题有一个突破口,就是时间小,那么我们可以枚举时间去check。把开始的任务放到优先队列去维护,对于ddl前的任务,我们把它放到队头。AC#include <iostream>#include <bits/stdc++.h>#define For(i,x,y)原创 2020-12-16 22:01:25 · 64 阅读 · 0 评论 -
Beijing Guards UVA - 1335(二分答案+思维&&贪心)
Beijing Guards UVA - 1335 题意:给你n个人,每个人有要rir_iri种礼物,假如两个相邻的人,有礼物相同,那么他们就不会满足。问:现在需要多少个礼物。找到一种分配,可以使得所有人都满足。思路:首先可以想到的是二分,答案,即需要的礼物数。(先排除n为偶数的情况,因为n为偶数,肯定ans=max(ri+ri+1r_i+r_{i+1}ri+ri+1),之后问题的关键是,奇数的情况)问题是,如何写check。首先可以知道要贪心地取奇数位置和偶数位置。对于奇数位置原创 2020-12-15 18:28:28 · 76 阅读 · 0 评论 -
Pie UVA - 12097(浮点数 二分答案)
Pie UVA - 12097 题意:有f+1个人要分N种圆形pai,每个人分到一整块pai(而不是几块拼在一起,且面积要相同,不必是圆形)。求:每个人分到的pai应尽量大。思路:典型的二分答案。这里注意二分时的L和R是浮点数。反思:(如下)const double eps = 1e-5;// while(R-L>eps){///L<R double mid=(R+L)/2; if(check(mid)) L = mid; else R = mid原创 2020-12-10 12:57:28 · 213 阅读 · 0 评论 -
Assemble UVA - 12124(典型二分答案)
Assemble UVA - 12124 题意:给你b元去选购配件。有n个配件,每个配件都有种类、名字、品质因子、价格。要求每种配件购买一个,总价格不超过b,且最差配件的品质因子的应尽可能大。思路:典型二分答案。AC#include <iostream>#include <bits/stdc++.h>#define For(i,x,y) for(int i=(x); i<=(y); i++)#define fori(i,x,y) for(int i=(x)原创 2020-12-10 12:51:36 · 107 阅读 · 0 评论 -
Now or later UVA - 1146(二分答案 && 2-sat)
Now or later UVA - 1146题意:有n架飞机需要着陆。每架飞机都可以选择“早着陆”和“晚着陆”两种方式之一,且必须选择一种。第iii架飞机的早着陆时间为EiE_iEi,晚着陆时间为LiL_iLi,不得在其他时间着陆。你的任务是为这些飞机安排着陆方式,使得整个着陆计划尽量安全。换句话说,如果把所有飞机的实际着陆时间按照从早到晚的顺序排列,相邻两个着陆时间间隔的最小值(称为安全间隔)应尽量大。思路:看到最后一句话,显然是二分的套路。那么现在问题是怎么安排:可以二分答案,之后按原创 2020-11-04 23:22:34 · 94 阅读 · 0 评论 -
专题十 匹配问题 POJ 2289 Jamie‘s Contact Groups(二分答案+二分图多重匹配)
POJ 2289 Jamie’s Contact Groups题意:有一个通讯录,要求你把每个好友分组。有m个组 [0,m)[0,m)[0,m)每个好友的所能去的组有限制。使得每个好友都能分到一个组。求min(所有组中largest的人数)min(所有组中largest的人数)min(所有组中largest的人数)思路:最小值中的最大值。(很裸的二分)之后匹配,就是二分图多重匹配。反思:sstream的初始化。 stringstream ss; ss.str("")原创 2020-08-13 23:06:11 · 537 阅读 · 0 评论 -
2020牛客暑期多校训练营(第十场)A-E(今天签到了去,菜了菜了)
A----Permutation题意:给你一个范围,【1,p-1】。要求你构造一个排列,使得(xi+1x_{i+1}xi+1 %p)= (2xix_{i}xi%p)或者(xi+1x_{i+1}xi+1 %p)= (3xix_{i}xi%p)思路:暴力构造即可以了。第一个放1,假如2xix_{i}xi没用过,那么2xix_{i}xi可以。假如2xix_{i}xi用过,那么看3xix_{i}xi.同理。找不到,就输出-1.是否用过vis以下就可以了。AC#incl原创 2020-08-10 18:41:41 · 98 阅读 · 0 评论 -
[kuangbin带你飞]专题10 ---POJ-3189(二分+多重匹配)
Steady Cow Assignment POJ - 3189题意:有b个牛舍,n头牛。每头牛对牛舍的喜爱程度不同。问:怎样分配可以使得牛的喜爱程度之差最小。思路:二分差值,之后枚举下界(牛舍只有20)之后建图,跑最大匹配。AC#include <iostream>#include <map>#include <string>#include <cstring>#include <cstdio>#define m原创 2020-08-04 16:06:01 · 162 阅读 · 0 评论 -
AtCoder Beginner Contest 174 ABCDE(题解)
A - Air Conditioner题意&&思路:if (大于30就)输出yes。else 输出no。AC#include <iostream>using namespace std;int main(){ int x; cin>>x; if(x>=30)cout<<"Yes"<<endl; else cout<<"No"<<endl; return 0;原创 2020-08-02 22:24:30 · 225 阅读 · 0 评论 -
kaungbin专题十一 网络流HDU3081(Marriage match)(并查集维护+二分答案+网络流)
Marriage Match II HDU - 3081题意:有n个男生和n个女生,在玩过家家。每一轮都配对一对夫妻。限制:下一轮的配对时,两个男女在之前不能配对过。女生不会和quarrel过的人配对。女生只能和没有和朋友quarrel过的男生配对。思路:对于女生的朋友,用并查集维护。对于m里的每对,肯定没有quarrel的:g1和b1.把g1和g1的朋友都与b1连边。(边权为1)之后二分答案。mid为轮数。把源点和每个女生相连,边权为mid。把每个男生和汇点相原创 2020-07-29 21:36:35 · 133 阅读 · 0 评论