
二分
逐梦起航-带梦飞翔
为了更加长远的快乐!
展开
-
poj3179 Corral the Cows(二分)(双指针)
题意约翰打算建一个围栏来圈养他的奶牛.作为最挑剔的兽类,奶牛们要求这个围栏必须是正方 形的,而且围栏里至少要有C< 500)个草场,来供应她们的午餐.约翰的土地上共有C<=N<=500)个草场,每个草场在一块1x1的方格内,而且这个方格的 坐标不会超过10000.有时候,会有多个草场在同一个方格内,那他们的坐标就会相同.告诉约翰,最小的围栏的边长是多少? 题解...原创 2018-08-03 12:32:23 · 862 阅读 · 0 评论 -
poj3974 Palindrome(Hash)(二分)
题意给定一个长度为n的字符串,求它的最长回文串。 题解1Manachar这个是正正解,时间复杂度仅为O(n),但不作为这次的主讲。 题解2hash+二分又是一道判断子串是否相同的问题,hash这个O(n)预处理,O(1)判断的绝B首选。但是这题需要顺着hash一次,逆着hash一次,因为回文串讲的是对称。实现时,枚举一个点或者两个点作为中心,然后向两边扩展。扩展...原创 2018-08-08 20:58:30 · 498 阅读 · 0 评论 -
CH1402 后缀数组(Hash)(二分)(排序)
题意用hash、快排、二分来求后缀数组中的sa和height。 题解hash+快排+二分sa数组的朴素求法是用一个string存下来,然后直接对string排序,但这样会爆空间。如果对两个后缀进行逐字的比较复杂度会大大超出。聪明的出题人想到了用二分+hash的方式来比较字符串的大小。hash的作用还是判断两个子串是否相等,二分的作用是求出第一个不相同的字符,比较这个字符即可得出...原创 2018-08-08 21:14:06 · 495 阅读 · 0 评论 -
洛谷2852 [USACO06DEC]牛奶模式Milk Patterns(Hash)(二分)(排序)
题目农夫John发现他的奶牛产奶的质量一直在变动。经过细致的调查,他发现:虽然他不能预见明天产奶的质量,但连续的若干天的质量有很多重叠。我们称之为一个“模式”。 John的牛奶按质量可以被赋予一个0到1000000之间的数。并且John记录了N(1<=N<=20000)天的牛奶质量值。他想知道最长的出现了至少K(2<=K<=N)次的模式的长度。比如1 2 3 2 3 2...原创 2018-08-08 21:52:20 · 631 阅读 · 0 评论 -
bzoj1816 [Cqoi2010]扑克牌(二分)
题目你有n种牌,第i种牌的数目为ci。另外有一种特殊的牌:joker,它的数目是m。你可以用每种牌各一张来组成一套牌,也可以用一张joker和除了某一种牌以外的其他牌各一张组成1套牌。比如,当n=3时,一共有4种合法的套牌:{1,2,3}, {J,2,3}, {1,J,3}, {1,2,J}。 给出n, m和ci,你的任务是组成尽量多的套牌。每张牌最多只能用在一副套牌里(可以有牌不使用)。...原创 2018-09-27 13:34:56 · 340 阅读 · 0 评论 -
洛谷1525 关押罪犯(并查集)(黑白染色)
题目洛谷1525关押罪犯题解1贪心+扩展域并查集把怨气值排序,大的当然要分配到两个不同的监狱。一个点拆成两个点,分两层,不同监狱连不同层。代码#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int maxn=20010,m...原创 2018-10-07 13:36:15 · 330 阅读 · 0 评论 -
poj3662 Telephone Lines(二分)(spfa)
题目poj3662 Telephone Lines题解二分+spfa判断一个问题如果满足二分性,整个问题就变得完全不一样了!显然,花的钱数满足二分性,问题就变成了判断是否存在一种免费方案,使得最大边权小于等于mid;或者说的直白一点,有没有一条路径,其上的边权大于mid的边的条数小于等于mid。这下,对于每个mid的,我们使所有原边权大于mid的现在为1,小于等于mid的现在为0...原创 2018-10-14 08:22:59 · 188 阅读 · 0 评论 -
洛谷1314 聪明的质监员(二分)(前缀和)
题目 洛谷1314 聪明的质监员题解二分+前缀和很显然满足二分性,随着W的增大,Y会变小,我们要找的是一个abs(S-Y)最小的值。一开始,我想着把abs拆开来看,讨论min(W-Y)和min(Y-W)。后来发现一个更牛逼的做法,只要一次二分,因为是要与S做绝对值,所以我们把Y值不断逼近S,有点像二分查找。至于如何快速求出对于当前W的Y呢?我们用前缀和。对于每个W都做一次前缀...原创 2018-10-16 13:08:00 · 300 阅读 · 0 评论 -
loj10121 与众不同(ST算法)(二分)
题目A 是某公司的 CEO,每个月都会有员工把公司的盈利数据送给 A,A 是个与众不同的怪人,A 不注重盈利还是亏本,而是喜欢研究「完美序列」:一段连续的序列满足序列中的数互不相同。A 想知道区间 [L,R] 之间最长的完美序列长度。尝试一开始想的是用权值线段树,这样只要满足min[l,r]=1那么这段就是合法的。又想了想让每个合法区间对提问更新,并不太可行。题解ST表+二...原创 2018-10-25 13:02:22 · 2004 阅读 · 0 评论