数列分块概要

分块简介

分块是对数列进行操作的一种(在线毒瘤暴力卡常)数据结构,把数列分块维护。主要处理区间问题

数列操作(L,R):

找最值,求和,求大于、小于K元素个数等

分块操作

一个对于[l,r]的操作,对于区间内完整的块,我们直接维护整个块的信息;对于两侧不完整的块,直接暴力。

        1.判断要操作或是查询的区间是否在一个块内
        2.若在一个块内,暴力操作或查询
        3.若不在一个块内,将除了最左边和最右边这两个块外其余的块进行整体的操作,即直接对块打上修改标记之类的
        4.单独暴力处理最左边的块和最右边的块

————引用自YuWenjue的博客

分块大小

数列长度为n时,一般为sqrt(n)

时间复杂度分析

初始化O(n),单次操作O(sqrt(n))

例题

黄学长的博客
将持续更新做题记录

posted @ 2021-03-01 19:15  一杯好凉茶  阅读(63)  评论(0编辑  收藏  举报