随笔分类 - 数学-FFT
摘要:自己整理出来的模板 存在的问题: 1.多项式求逆常数过大(尤其是浮点数FFT) 2.log只支持f[0]=1的情况,exp只支持f[0]=0的情况 有待进一步修改和完善 FFT: 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef l
阅读全文
摘要:题目链接 设序列a的生成函数$\large f(x)=\sum\limits_{i=0}^{n-1}a_ix^i$,则操作1,2,3分别对应将$f(x)$乘上$\Large\frac{1}{1-x},\frac{1}{1-x^2},\frac{1}{1-x^3}$,如果操作1,2,3分别进行了p1,
阅读全文
摘要:本文主要简单写写自己在算法竞赛中学习FFT的经历以及一些自己的理解和想法。 FFT的介绍以及入门就不赘述了,网上有许多相关的资料,入门的话推荐这篇博客:FFT(最详细最通俗的入门手册),里面介绍得很详细。 为什么要学习FFT呢?因为FFT能将多项式乘法的时间复杂度由朴素的$O(n^2)$降到$O(n
阅读全文
摘要:题意:给你一堆线段的长度,求任选三条能组成三角形的概率。 解法:先求出任选两条能组成的所有长度及其数量,这个过程可以用FFT实现。设a[i]代表长度为i的线段的数量,数组b为数组a的平方,然后从b中减去每条线段自己的贡献,即b[i*2]-=a[i],然后对所有的b[i]除以2,则b[i]就代表取两条
阅读全文
摘要:题意:计算A*B,A,B均为长度小于50000的整数。 这是FFT在大整数相乘中的一个应用,我本来想用NTT做的,但NTT由于取模很可能取炸,所以base必须设得很小,而且效率也比不上FFT。 A和B的存储均用long long,在计算乘积的时候转化成double,计算完成后再转回来即可。 测得ba
阅读全文

浙公网安备 33010602011771号