二分
邵光亮
要为自己喜欢的事情不留余力
展开
-
Codeforces 1359 C. Mixing Water(二分)
题意:有一个无限大的容器。你轮流进行如下操作:倒一杯热水进去、倒一杯冷水进去。以此类推。(热水温度是 hhh ,冷水温度是 ccc),容器中的水的温度等于倒进去的水的温度总和/倒水的次数。问你需要进行多少次操作,水的温度才能最接近温度t。设倒进冷水的杯数为 xxx ,热水的杯数为 x+1x+1x+1 。然后二分杯数,如果 (h∗(mid+1)+c∗mid)/(2.0∗mid+1)>t(h * (mid + 1) + c * mid) / (2.0 * mid + 1) > t(h∗(mi.原创 2020-05-29 16:08:09 · 139051 阅读 · 0 评论 -
Codeforces 1358 D. The Best Vacation(二分)
题意:一种新的纪年方式,一年有 nnn 个月,每个月有 did_idi 天,没有闰年。计算某一天的值的方式为该天在该月中是第几天。连续选择 xxx 天,要求这 xxx 天得到的值最大。最优解的区间的右端点一定一定是某个月的月末,枚举每个月的月末,二分查找区间左端点即可。AC代码:const int N = 1e6 + 50;ll n, m, x;ll a[N], s[N], sum[N];int main(){ int t; sldd(n, x); s[0] = 0; sum[..原创 2020-05-27 22:03:03 · 138933 阅读 · 0 评论 -
牛客练习赛63 C 牛牛的揠苗助长(二分)
二分天数,用一个数字记录如果不施加魔法第 xxx 后每个水稻的高度,然后找到这些水稻的中位数,想要施加魔法的次数最小肯定是都变成中位数的高度,然后判断天数是否够用即可。AC代码:const int N = 2e5 + 10;int n, m, k;ll a[N], b[N];bool check(ll x){ rep(i, 1, n) { b[i] = a[i] + x / n; if (x % n >= i) b[i]++; } sort(b + 1, b + .原创 2020-05-09 10:11:41 · 142247 阅读 · 0 评论 -
Codeforces D. Xenia and Colorful Gems(二分)
题意:三个数组,每个数组中挑出来一个数,求 (x−y)2+(x−z)2+(y−z)2(x-y)^2+(x-z)^2+(y-z)^2(x−y)2+(x−z)2+(y−z)2 的最小值。三个数肯定有大有小,先固定最大的数和最小的数,然后枚举中间的数,这个固定的过程可以使用二分来加速,然后枚举过程选择最小值。AC代码;const int N = 2e5 + 5;ll r[N], g[N],...原创 2020-04-16 09:24:20 · 146014 阅读 · 0 评论 -
Codeforces 1324 D. Pair of Topics(二分)
题意:给出两组长度为 nnn 的数组 ai,bia_i,b_iai,bi,问满足 (i<j)ai+aj>bi+bj(i < j) a_i + a_j > b_i + b_j(i<j)ai+aj>bi+bj 有多少对。移项可得 ai−bi>bj−aja_i-b_i>b_j-a_jai−bi>bj−aj ,所以我们只需要求...原创 2020-03-14 08:28:45 · 145587 阅读 · 0 评论 -
Codeforces 1238 B. Kill 'Em All(二分)
题意:在一维坐标轴上有 nnn 个怪物在0坐标右边。你可以用炸弹炸任何一个位置,产生的效果是炸死这个位置的怪物,并且把所有在这个位置左边的怪物坐标左移 rrr 位,右边的怪物坐标右移 rrr 位,当怪物的坐标小于等于 000 时,怪物就会被陷阱杀死。求最少用几个炸弹可以杀死所有的怪物。二分答案,先把所有怪物排序,判断左边数第 n−midn−midn−mid 个怪物能否在 midmidm...原创 2020-03-12 16:20:06 · 143589 阅读 · 0 评论 -
Codeforces 1323 D. Present(二进制+二分)
题意:给一个长度为 nnn 的序列 aaa要求计算 (a1+a2)⊕(a1+a3)⊕…⊕(a1+an)⊕(a2+a3)⊕…⊕(a2+an)…⊕(an−1+an)(a_1+a_2)⊕(a_1+a_3)⊕…⊕(a_1+a_n)⊕(a_2+a_3)⊕…⊕(a_2+a_n)…⊕(a_{n−1}+a_n)(a1+a2)⊕(a1+a3)⊕…⊕(a1+an)⊕(a2+a3)⊕…⊕(a2+...原创 2020-03-08 11:50:54 · 143651 阅读 · 9 评论 -
2020 CCPC Wannafly Winter Camp Day1 F 乘法(二分)
题意:给定长度为 nnn 的序列 AAA 和长度为 mmm 的序列 BBB,序列 AAA 的第 i(1≤i≤n)i \left(1\leq i\leq n\right)i(1≤i≤n)项为 AiA_iAi序列 BBB 的第 i(1≤i≤m)i \left(1\leq i\leq m\right)i(1≤i≤m)项为 BiB_iBi构造 n×mn\times mn×m 的矩阵 CCC ,第...原创 2020-02-21 18:52:50 · 240 阅读 · 0 评论