
分块
沙雕.
此人很帅,什么都没有写
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
HYSBZ 2957 楼房重建(分块)
题目链接:https://vjudge.net/problem/HYSBZ-2957 参考来自: https://www.cnblogs.com/kirito520/p/5945427.html 解题思路: ①当前房子能被看见当且仅当之前所有房子的斜率都比当前房子斜率小。(这个人是从(0,0)仰视着看的) ②考虑暴力,修改O(1),查询则O(N)遍历。复杂度 就是 N^2 这个O(N)遍...原创 2019-05-04 13:09:19 · 161 阅读 · 0 评论 -
CodeForces - 103D Time to Raid Cowavans (分块思想)
题目链接:http://codeforces.com/problemset/problem/103/D 题目大意:给出n头牛的质量,有p次操作,每一次的[a,b]操作,让你求从a开始,a+b,a+2b....直到超过n的这些牛的质量。 参考自:https://www.cnblogs.com/kirito520/p/5933636.html 解题思路: ①首先考虑最原始的暴力,每次询问暴力相...原创 2019-05-05 16:32:57 · 233 阅读 · 0 评论 -
CodeForces - 13E Holes(分块)
题目链接:http://codeforces.com/problemset/problem/13/E 解题思路: 暴力法①:O(1)修改,O(N)询问 暴力法②:直接维护每个点出去的次数,那么O(N)修改,O(1)询问 用分块的思想,维护O(sqrt(N))修改,O(sqrt(N))询问 x[i]代表出i属于的块需要几步,y[i]表示i挑出这个块后跳到的具体位置 如果做过弹飞绵羊这题是...原创 2019-05-05 23:13:19 · 210 阅读 · 0 评论 -
CodeForces - 551E GukiZ and GukiZiana (分块 + 二分搜索)
题目链接:http://codeforces.com/problemset/problem/551/E 题目大意: 定义两种操作,一种区间增加一个值 另一种查找整个数组中一个指定数,求出最右边这个数的位置-最左边这个数的位置,如果没有就为-1 解题思路: 既要二分又要局部修改导致排序后的块内顺序错乱。 所以用vector储存一个块内排序后的数组。 然后对于区间修改时边界两个不完整的块...原创 2019-04-30 23:25:11 · 175 阅读 · 0 评论 -
LOJ 6278 数列分块入门 2
题目链接:https://loj.ac/problem/6278 解题思路: 分块维护区间递增序列。 对于修改,边界暴力后修改两个边界的递增序列使其正确,完整块打标记 对于询问,边界暴力+块内二分 修改的复杂度 O(sqrt(N) + 2*sqrt(N)*log(sqrtN)) 询问复杂度 O (sqrt(N) + 2*sqrt(N)) 所以整体大概是 O (q*sqrt(N)...原创 2019-06-30 20:46:20 · 214 阅读 · 0 评论