Sqrt Decomposition

数列分块

考虑一些在序列上的区间操作,如区间加和区间求和。

直接暴力做单次操作复杂度是 \(\Theta(n)\),总时间复杂度 \(\Theta(qn)\).

具体实现如下:

对每个块维护整块加的值,查询的时候加上即可。

时间复杂度 \(\Theta(n\sqrt{n})\)。