從快速傅里葉變換到各種卷積


Easy

 

高精度乘法

直接多項式相乘+進位

BZOJ2194

c_k=\sum_{i=k}^{n-1}a_i*b_{i-k}

把b的下標倒過來

變成

C_k=\sum_{i=k}^{n-1}a_i*b_{n-i+k}

其實就是

C_{k-n}=\sum_{i=k-n}^{n-1}a_i*b_{k-i}

和正常多項式乘法沒有區別

BZOJ3160

Manacher+FFT

不會Manacher 沒寫

Medium

循環卷積hihocoder 1388

即求

F[k]=2\sum_{i=0}^{n-1}a_i*b_{(i+j)~mod~n}

那么這種下標有取模的循環卷積:

那么把原數列加長一倍就好了。。,其余就是上面那個翻轉b的Easy Trick了

 

To be continue


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM