k 次方和问题浅述
前置技能:线段树,组合数学,矩阵。
下面分组介绍。
幂和问题
幂和问题即为求
显然,直接利用枚举与快速幂可以做到这个时间复杂度。
考虑到
实现见这里。
公式是:
推导见这里。
由于 Lagrange 基本多项式的分子分母特殊,因此利用 Lagrange
插值可以做到
具体可参考 riteme 的博客。
不典型例题
求:
输出答案对
原题来自:ICM Technex 2018 and Codeforces Round #463 (Div. 1 + Div. 2, combined) E. Team Work。
有一个比较常用的转化:
注意第四步的配凑和倒数第二步中组合数的化简,由于它能覆盖到
区间
次方和问题
区间
当
当
一般询问的是
线段树问题我们一般维护询问,当询问区间和,区间修改为区间加法时,有如下推导:
可以观察到,要维护
但是对于更高次数时,这样维护太奔溃了,对于高次情况我们考虑使用矩阵来维护。
对于线段树的每个区间,维护如下矩阵:
对于区间加法,即可对于每个区间右乘(
考虑到加法可以合并,我们可以直接维护区间加标记,下传时再构建上述矩阵进行标记下传中的维护。对于乘法,和区间乘法一样类似操作即可。因此整个操作的复杂度为
当
相关题目: