问题模型
给出两个整数(N,S)以及一个长度为(4)的数组(A_{0 sim 3})。
求:$sum_{i=0}^{n} C(n,i) S^i A_{(i mod 4)} $。
公式推导
因为只有(4)个值,所以我们考虑将答案拆开:
[ Ans = sum_{r=0}^{3} sum_{i=0}^{n} [i equiv rmod 4] C(n,i) S^i
]
我们考虑单位根反演:
[ [k|n] = frac{1}{k} sum_{i=0}^{k-1} omega_{k}^{in}
]
考虑证明:
- (k|n)成立,那么显然等于(1)。
- 如果(k ot|n),那么可以写成等比数列求和:(sum_{i=0}^{k-1}omega_{k}^{in} = frac{omega_{k}^{kn}-1}{omega_{k}^{n}-1} = 0)
那么我们就可以将答案写成:
[ Ans = sum_{r=0}^{3} A_r sum_{i=0}^{n} [4 | (i-r)] C(n,i) S^i
]
[ = sum_{r=0}^{3} A_r sum_{i=0}^{n} C(n,i) S^i frac{1}{4}sum_{j=0}^{3}omega_{4}^{(i-r)j}
]
[ = sum_{r=0}^{3} A_r sum_{j=0}^{3} omega_{4}^{-jr} sum_{i=0}^{n} C_{n}^{i} S^i omega_{4}^{ij}
]
[ = sum_{r=0}^{3} A_r sum_{j=0}^{3} omega_{4}^{-jr} (Somega_{4}^{j}+1)^n
]
就做完了。