二分
qq_38232157
这个作者很懒,什么都没留下…
展开
-
SP10108 BALLOT - Distributing Ballot Boxes(二分查找)
二分查找本题要点:1、二分 投票点的最大投票数量。 L = 1, R = max_b(城市的最大人口数)2、对于每一个 mid, 计算所有城市 满足投票点的最大投票数量 是 mid 的 最少的投票点数量。函数 judge 来计算这个。找到最小的使得 if(judge(mid) <= m) 成立的 mid, 就是答案。#include <cstdio>#include <cstring>#include <iostream>using namespac原创 2020-09-19 21:21:24 · 68 阅读 · 0 评论 -
洛谷 P1314 聪明的质监员(二分查找,前缀和)
二分查找,前缀和本题要点:1、首先, s 很大,所有用 long long 来存数组 w, v 和前缀和。2、sum_num[i] 表示前 i 个位置, w值大于等于W 的数量;sum_v 表示前 i 个位置, w值大于等于W 的 v 值的累加和;3、 二分 W, 计算每个区间的 y[i] 值, 累加得到 y 值。二分得到第一个使得 y 值小于等于 s 的 W 值(此时取值 L), 那么 W - 1 所计算得到的y值,可能是第一个大于等于 s 的。因此比较 W 取值 L 和 L - 1 ,看哪原创 2020-09-15 11:13:24 · 114 阅读 · 0 评论 -
Codeforces 622C Not Equal on a Segment (stl, 二分查找)
stl, 二分查找题目意思:有一个整数数组 a(元素最多 n <= 2e5), 有 m 次查询 ,每次给出三个数 L, R, p;要求在 坐标[L, R] 范围内,找到一个下标 k ,使得 a[k] != p 。每次输出k, 如果找不到,就输出 -1;本题要点:1、 vector v[MaxN];用 vector 数组a的每一个数 a[i] 在数组a中的下标。 v[a[i]].push_back(i);然后 在 v[a[i]] 里面,存的所有下标是从小到大排序的。 有序后就可以二分了。原创 2020-09-07 17:00:30 · 85 阅读 · 0 评论 -
POJ 2002 Squares 几何, 二分
题目意思:给n个点,求可以组成几个正方形本题要点:1、 正方形已知两点(x1, y1), (x2, y2) 求另外两点的坐标x3 = x1 + (y1 - y2), y3 = y1 - (x1 - x2)x4 = x2 + (y1 - y2), y4 = y2 -(x1 - x2)2、 二分查找#include <cstdio>#include <cstring...原创 2020-02-02 20:56:14 · 165 阅读 · 0 评论 -
LA 3971 Assemble(二分查找,stl)
题目意思:算法竞赛入门经典训练指南,18 页本题要点:1、求解 “最小值的最大”,常用二分查找二分查找x, 判断是否有总价格不大于 b 的,而且配件最小因子都不小于 x的电脑。2、 使用map 来存储 每种配件对应的 名字和id号使用vector 来存储每种配件 的所有的类型#include <cstdio>#include <cstring>#include <iostream>#include <vector>#include <原创 2020-05-13 23:24:27 · 158 阅读 · 0 评论 -
CH 0805 防线(进阶指南,二分)
算法竞赛进阶指南,48页,二分本题要点:1、 本题的关键数据, 所有的坐标点上,最多只有一个数是奇数;然后计算小于等于某个坐标点 x,含有的所有等差数列 st[i], ed[i], d[i] (1 <= i <= n)出现过的点的总和。具体某个等差数列st[i], ed[i], d[i], 在小于等于x的坐标点出现的次数:(min(ed[i], x) - st[i] ) / d[i] + 1;2、二分所有的坐标点,注意坐标点的最大值 为 2^31 - 1。直接使用 long long原创 2020-06-12 22:28:12 · 160 阅读 · 0 评论 -
洛谷 P1083 借教室 (差分,二分)
差分数组和二分法本题要点:1、对订单数 进行二分,找到刚好第k条订单教室不过分。2、差分数组 pre[i] 表示前i条订单, 每个教室的需求总数的总和 的差分。一开始,pre数组置零;每次计算前 mid 条订单,对于某个区间[L, R]的教室的需求量加上d, 相当于 第 L个教师加上d,第 R + 1 个教室减去 d;#include <cstdio>#include <cstring>#include <iostream>using namespace原创 2020-06-12 10:45:11 · 175 阅读 · 0 评论