P2261 [CQOI2007]余数求和
首先这是一道整除分块的题
关于整除分块可以参考整除分块(数论分块)。
这道题给了n和k两个整数,但是我们要求的是k%i。由于没有给出n与k的相对大小,我们需要分情况来进行判断。
首先,如果n>=k
我们要先计算i∈[1, n]的情况,这时要采用数论分块,并由他们的整除的值相同来推出这一个区间的公式。
k % i = k − ⌊ k i ⌋ i r e s = ( r − l + 1 ) k − ⌊ k i ⌋ ( ∑ i = l r i ) r e s = ( r − l + 1 ) k − ( r + l ) ( r − l + 1 ) ⌊ k l ⌋ / 2 k \% i = k - \lfloor\frac{k}{i}\rfloor i \\ res = (r - l + 1) k - \lfloor\frac{k}{i}\rfloor(\sum_{i = l}^ri) \\ res = (r - l + 1) k - (r + l)(r - l + 1)\lfloor\frac{k}{l}\rfloor/2 k%i=