FFT卷积相加模板】的更多相关文章

struct Complex { double r,i; Complex(double _r,double _i):r(_r),i(_i){} Complex(){} Complex operator +(const Complex &b) { return Complex(r+b.r,i+b.i); } Complex operator -(const Complex &b) { return Complex(r-b.r,i-b.i); } Complex operator *(cons…
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=2194 给出序列\(a[0],a[1],...,a[n-1]\)和\(b[0],b[1],...,b[n-1]\). \(c[k]=\sum_{i=k}^{n-1}a[i]b[i-k]\). 求序列\(c[]\). 分析 这题就是BZOJ_3527_[ZJOI2014]_力_(FFT+卷积)的后半段... 我们来重新分析一下. 首先我们要知道卷积的标准形式: $$c[i]=\sum_{j=0}…
http://www.lydsy.com/JudgeOnline/problem.php?id=3527 好好的一道模板题,我自己被自己坑了好久.. 首先题目看错.......什么玩意.......首先题目要求: $$F_j=\sum_{i<j} \frac{q_i q_j}{(i-j)^2}-\sum_{i>j} \frac{q_i q_j}{(i-j)^2}$$ 然后设 $$E_i=\frac{F_i}{q_i}$$ 然后我将$F_j$看成$F_i$....作死系列...... 然后fft…
[题目大意] [思路] 很好这很FFT…… 想了半天也没明白到底什么是卷积∑的上下界,我当初学的时候没说一定要从0开始啊quq 我还是背不出FFT的模板我要狗带了 我上面写的什么乱七八糟的,要什么数学,意识流脑补一下就好了.用人话翻译一下: 先看一下这个式子:(盗图图源) (当然我的程序里下标是从0开始的,差不多啦) 是不是比写∑什么豁然开朗很多啦! 前半部分是从0开始的,且j-1+1=j,显然卷积搞一下. 后面不是从0开始的,但是实在n-1结束的,我们把所有的q左右颠倒过来,仍然满足和是相等的…
描述 题面: http://wenku.baidu.com/link?url=D2ORnA9xjgSxa2GlYLB7gGiYgBcXsy-Aw0kVYTjTE-iYhH1s7h8xXGmnaMwl32SYznVvzodyKZgHODl_ekzIFwEsO64ZOMIvQbsah-9kZiW 提交: http://www.lydsy.com/JudgeOnline/problem.php?id=3527 给出n个数字(q1~qn),定义$$F_i=\sum_{j<i}{q_iq_j\over (…
题目链接 \(Descripiton\) 给定\(A[\ ],B[\ ]\),求\[C[k]=\sum_{i=k}^{n-1}A[i]*B[i-k]\ (0\leq k<n)\] \(Solution\) (先令\(n=n-1\)) 首先往卷积上想.. \(i\)与\(i-k\)的差值是一定的,但是卷积的形式是\[C[k]=\sum_{i=1}^k A[i]*B[k-i]\] 即\(i\)与\(k-i\)的和是一定的. 于是考虑把一个数组反转一下,这里把\(B[\ ]\)反转,那么\[C[k]=…
洛谷 P3803 [模板]多项式乘法(FFT)传送门 存个板子,完全弄懂之后找机会再写个详解. #include<cstdio> #include<cmath> struct cpx { double rl,im; friend cpx operator + (cpx q,cpx w) { return (cpx){q.rl+w.rl,q.im+w.im}; } friend cpx operator - (cpx q,cpx w) { return (cpx){q.rl-w.rl…
题面 传送门:洛咕 Solution 调得我头大,我好菜啊 好吧,我们来颓柿子吧: 我们可以只旋转其中一个手环.对于亮度的问题,因为可以在两个串上增加亮度,我们也可以看做是可以为负数的. 所以说,我们可以假设我们旋转\(B\)串,上下要加上的亮度差为\(p\),可以直接拍出一个最暴力的柿子: 设\(f(x)\)表示\(B\)串以\(x\)为开头的差异值,有: \(f(x)=\sum_{i=0}^{x-1}(B[i]-A[i+n-x]+p)^2+\sum_{i=x}^{n-1}(B[i]-A[i-…
题面 传送门: 洛咕 BZOJ Solution 写到脑壳疼,我好菜啊 我们来颓柿子吧 \(F_j=\sum_{i<j}\frac{q_i*q_j}{(i-j)^2}-\sum_{i>j}\frac{q_i*q_j}{(i-j)^2}\) \(q_j\)与\(i\)没有半毛钱关系,提到外面去 \(F_j=q_j*\sum_{i<j}\frac{q_i}{(i-j)^2}-q_j*\sum_{i>j}\frac{q_i}{(i-j)^2}\) 左右同时除以\(q_j\) \(E_j=…
有时间来补算法原理orz #include <iostream> #include <cstdio> #include <cmath> #include <complex> using namespace std; ); ; typedef complex<double> Complex; void DFT(Complex *a, int n, int t) { ) return; Complex a0[n>>], a1[n>&…