分块
zlq7777
icpc区域赛银
展开
-
E. Arithmetic Operations 根号分治
的,一维枚举起始位置,一维扫过去,发现暂时没法优化,所以转变思路,看能否换个枚举方式,转而枚举 d(差值),同时发现如果差值大的话,完全不需要枚举完整个数列。(我当时还想着是枚举位置,再枚举位置),但实际上,完全可以利用等差公式根据位置推到。感觉分块目前见到的有对序列分块,对值域分块,对询问分块。马上想到根号分治,对值域分治,对于大于根号 k 的差值,只需要枚举根号的长度即可,这里的复杂度是。的众数是多少,由于再加个 log 会 T,所以开个桶解决【对于小于根号的处理方式跟这题。原创 2023-01-20 21:58:20 · 770 阅读 · 1 评论 -
D. Time to Raid Cowavans(按数据分块
分析:还是很妙的很优雅的分块 —— 首先这个暴力肯定不行,想想怎么优化,发现如果存在相同的b,那么可以做一个后缀和优化,但是如果他全都不一样,这种极端情况也是可以卡成n2的,—— 但发现数据大的时候其实直接做即可,这里就要取一个优雅的平衡点 ——题意:3e5个数,3e5组询问,每组询问给(a,b)—— 问从a,a+b,a+2b,。一直到下标超过n为止所有下标的和是多少。PS:自从换成C++的写法突然感觉之前函数的写法有点丑hh。,大于根号的直接暴力,小于的用前缀和处理,复杂度最大时。原创 2023-01-16 23:13:22 · 79 阅读 · 0 评论 -
#6282. 数列分块入门 6 【单点插入,单点查询
#6282. 数列分块入门 6 —— 随机插入原创 2023-01-16 13:24:17 · 95 阅读 · 0 评论 -
E. GukiZ and GukiZiana【分块(块内排序)
PS:今天终于学了分块,感觉数据结构现在才算把大的漏洞补完,个人感觉分块还是很厉害的,毕竟通用面更广;不过第一版代码的询问不知道为啥错了,wa32,一直想不明白。原创 2023-01-15 21:49:02 · 68 阅读 · 0 评论