[湖北省队互测2014]一个人的数论

[湖北省队互测2014]一个人的数论

给定 (n,d),计算 (f_d(n))

其中 (f_d(n))([1,n]) 中所有与 (n) 互质的数的 (d) 次幂之和。

由于 (n) 非常大,所以给出其因式分解式,(p_1^{a_1}p_2^{a_2}...),保证分解后的项数至多为 (10^3)(p,ale 10^9)(p) 均为质数。

(dle 100,wle 10^3)

( m Sol:)

答案是:

[egin{aligned} &sum_{i=1}^n [gcd(i,n)=1] imes i^d \&=sum_{i=1}^n sum_{t|n,t|i} mu(t) imes i^d \&=sum_{t|n} mu(t)t^d imes S(frac{n}{t}) end{aligned}]

对于自然数幂和,通过伯努利多项式展开:

[egin{aligned} &sum_{t|n} mu(t)t^d imes S(frac{n}{t}) \&=sum_{t|n}mu(t)t^d imes sum_{j=0}^{d+1} f_j imes (frac{n}{t})^j \&=sum_{j=0}^{d+1} f_j imes n^j sum_{t|n} mu(t) imes t^{d-j} end{aligned}]

注意到 (n) 的给出为因式分解形式,(mu(t) e 0) 当且仅当每个质数出现且仅出现一次。

枚举 (j),统计答案只需要统计 (t^{d-j}),每个元素相当于一个多项式 ((1-t^{d-j})),直接算即可?

复杂度是 (mathcal O(d imes w+d^2)),直接伯努利数他不香吗。。。

原文地址:https://www.cnblogs.com/Soulist/p/13653674.html