loj 6485 LJJ 學二項式定理

2022-03-25 19:39:47 字數 1993 閱讀 9043

給定$n,s,a_0,a_1,a_2,a_3$,求

$$\sum_^ s^i a_$$

答案對$998244353$取模

$1 \le n \le 10^, 1 \le s,a_0,a_1,a_2,a_3 \le 10^8$

一臉絕望

在高中的時候,數學老師教會了我們$(a+b)^=\sum_^a^b^$,然後驚喜的發現這道題不能這麼做!

在$oi$中,我們學習了單位根的基本性質,關於單位根還有乙個迷之用法——單位根反演

對於數列$a_i$,構造其生成函式$f(x)=\sum_^a_ix^i$

現在我們想知道所有下標是$k$的倍數的$a_i$的和,既$\sum_^a_i[k|i]$

有乙個關於$n$次單位根$w_n$的等式,看起來十分有趣毒瘤

$$[n|k]=\frac\sum_^\omega_n^$$

證明:如果$n \mid k$,設$k=np$,則

$$\frac\sum_^w_n^=\frac\sum_^w_n^=1$$

如果$n \nmid k$,根據等比數列求和公式,則

$$\frac\sum_^\omega_^=\frac(w_n^\frac}})=\frac})}=0$$

於是對於$n$次單位根$w_n$可以這麼搞:

$$\frac^f(w_n^i)}=\frac^a_i\sum_^w_n^}=\sum_^a_i[n \mid i]$$

於是就可以得到所有下標是$n$的倍數的$a_i$的和了

但是發現,只知道所有$n \mid i$的$a_i$的和還不夠有用,如果分別知道$i \bmod n \in [0,n-1]$的$a_i$的和的話就十分有用了

數學老師告訴我們,$f(x)$通過乘以$x$的若干次冪可以實現函式的平移(雖然說這句話不太嚴謹……但還是可以湊合著看看……)

比如說現在有$f(x)=a_0x^+a_1x^+a_2x^ + \dots$

對其乘上$x^$後會得到$f(x)x^=a_0x^+a_1x^+a_2x^ + \dots$

再用上面的方法求後就得到了$n \bmod i = 1$的所有$a_i$和

在這道題中,構造$f(x)=\sum_^ s^i x^i 1^=(sx+1)^n$

則答案為$\sum_^a_ic_i$,其中$c_i=\sum\limits_^s^j[j \bmod 4 = i]$

對於$c_i$的$f(\omega_n^j)$,因為需要將$\omega_n^$向右平移$i$次,只需要將其變為$\huge \frac}$即可

1 #include 2

using

namespace

std;

3 typedef long

long

ll;4

const

int p = 998244353, g = 3;5

ll pw(ll a, ll b)

10 ll n, s, a[4], w[4], c[4

];11

intmain()

23 ll sum = 0;24

for(int i = 0 ; i < 4 ; ++ i) sum = (sum + a[i] * c[i] % p) %p;

25 printf("

%lld\n

", sum);26}

27 }

loj #6485. ljj 學二項式定理

一些資料

shadowice1984loj6485 ljj學二項式定理

dt_kang【4.13 提高班小記】單位根&&雜題

zhang-rq單位根反演學習筆記

mys_c_k[真學習筆記] 前夕 - 單位根反演 - 廣義容斥

regina8023【bzoj 3328】pyxfib

LOJ 6485 LJJ 學二項式定理

給定 n,s,a 0,a 1,a 2,a 3 求 large left sum n left cdot s cdot a right right bmod 998244353 t le 10 5 組測試資料,n le 10 s,a i le 10 9 一看 n 巨大無比顯然不太能直接搞.但是這個 b...

loj6485 LJJ 學二項式定理

題目描述 loj題解 單位根反演。n x frac sum n x i 證明?顯然啊,要麼停在 1,0 要麼轉一圈。所以說題目要求的是 sum c n,i s i a 把 a 提前,變成 sum a k sum c n,i s i 4 i k 然後把上面單位根反演式子套進去。後面變成 sum n c...

loj6485 LJJ 學二項式定理

給出 n,s,a 0,a 1,a 2,a 3 求 sum n binom s i a 對 998244353 取模的值。本來像強行用xiaomange的方法艹過去,but failed。大概猜到和原根有關,但是思考也只是停留在特殊的情況下,沒有進行更有效的思考。正解是單位根反演。大概就是在推式子的過...