mxqz NTT 为什么这么慢

P3803 【模板】多项式乘法(FFT)

输出的时候不要每次都快速幂
by henryhu2006 @ 2023-09-04 20:48:12


@[Aigony](/user/339128) i+j 改成 i|j,i+len+j 改成 i|len|j 试试?
by OldDriverTree @ 2023-09-04 20:51:49


@[OldDriverTree](/user/681036) @[henryhu2006](/user/133060) 感谢,确实快了不少( 1.3s 了 >w< 但是最优解那些几百 ms 的 NTT 又是怎么搞的捏 QAQ
by Aigony @ 2023-09-04 20:54:56


就常数上来说: ``a[i+j]=(x+y)%mod,a[i+len+j]=(x-y+mod)%mod;`` 这一句话调用次数很多,所以你可以写三目运算符加速。
by jerry3128 @ 2023-09-04 21:10:34


把 %mod 用三目改成减运算。
by jerry3128 @ 2023-09-04 21:11:12


快速取模(三目判断),原根预处理(对于每个len,预处理g的0次方到(len >> 1)次方加速计算)
by LoserKugua @ 2023-09-04 21:18:59


@[jerry3128](/user/27338) @[LoserKugua](/user/308796) 感谢大佬 qwq
by Aigony @ 2023-09-04 21:37:04


@[henryhu2006](/user/133060) 感谢, 有用, 改了之后我测试点8,9一个2.0s,一个2.05s,?。再预处理一下原根之后过了
by temp142857 @ 2023-12-14 11:26:38


|