FFT

#include
#include
#include
using namespace std;
const double PI=acos(-1);
const int M=110000; 
struct complex{//虚数a+bi
	double a,b;complex(){}complex(double x,double y){a=x;b=y;}
	complex operator +(complex x)const{return complex (a+x.a,b+x.b);}
	complex operator -(complex x)const{return complex (a-x.a,b-x.b);}
	complex operator *(complex x)const{return complex (a*x.a-b*x.b,a*x.b+b*x.a);}
}a[M],b[M];
int n;
void fft(complex *a,int f){
	for(int i=0,j=0;ij) swap(a[i],a[j]);
		for(int l=n>>1;(j^=l)>=1);
	}
	for(int i=1;i

你可能感兴趣的:(2018,数论)