
分块
吴俊达9812
这个作者很懒,什么都没留下…
展开
-
牛客多校第三场 A Graph Games
hash + 分块首先一个常用的技巧是按照点的度数进行分块,然后对于每个小点我们需要进行 sqrt(m)次的查询。所以我们希望查询的复杂度降低,采用分块的做法。 对于大点,我们 需要进行修改的次数要大于查询的次数,所以我们分块维护快的答案。从标程里学到一个生成hash值得模板。#include <bits/stdc++.h>using namespace std;ty...原创 2019-09-04 16:23:48 · 110 阅读 · 0 评论 -
数列分块2
题意:给出一个长为n的数列,以及n个操作,操作涉及区间加法,询问区间内小于某个值x的元素个数。有了上一题的经验,我们可以发现,数列简单分块问题实际上有三项东西要我们思考:对于每次区间操作:1.不完整的块的O(√n)个元素怎么处理?2.O(√n)个整块怎么处理?3.要预处理什么信息(复杂度不能超过后面的操作)?我们先来思考只有询问操作的情况,不完整的块枚举统计即...原创 2019-09-25 21:31:07 · 231 阅读 · 0 评论 -
数列分块6
题意:给出一个长为n的数列,以及n个操作,操作涉及单点插入,单点询问,数据随机生成。思路:先说随机数据的情况之前提到过,如果我们块内用数组以外的数据结构,能够支持其它不一样的操作,比如此题每块内可以放一个动态的数组,每次插入时先找到位置所在的块,再暴力插入,把块内的其它元素直接向后移动一位,当然用链表也是可以的。查询的时候类似,复杂度分析略。但是这样做有个问题,如果数据不随机怎...原创 2019-09-25 22:27:59 · 212 阅读 · 0 评论