NTT
质数模数 NTT
-
普通 FFT 有一个很大缺点就是精度和随带的速度
-
因为一直是在复数域,大量的 double 运算,精度的损失太大了,所以出现了 NTT (快速数论变换)
-
NTT 的思想和 FFT 的思想是一样的,只是将原根换成了一个替代品
关于模数的原根 -
倒数的地方就是原根关于模数的逆元
任意模数 NTT
-
以 P4245 【模板】任意模数多项式乘法 为例
-
最大值不超过
,那么拿三个模数来做就差不多了 -
我们拿三个模数,每个都做一边 NTT ,那么最后对于每一项就可以用 excrt 来解
-
要注意的是 excrt 不能直接用,因为模数的 lcm 会爆,这个时候需要手推式子
-
比如
,那么 ,将这个带入下一个式子的左边,迭代下去即可 -
最终会得到
,因为 ,所以 ,那么求 的过程中就可以对原题目要求的质数取模了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】