博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
luogu1919 A*BProblem升级版 (FFT)
阅读量:5062 次
发布时间:2019-06-12

本文共 1054 字,大约阅读时间需要 3 分钟。

把一个n位数看做n-1次的多项式,每一项的系数是反过来的每一位

最后每一项系数进进位搞一搞就行了
(数组一定要开到2的次数..要不然极端数据会RE)

1 #include
2 #include
3 #include
4 #include
5 using namespace std; 6 const int maxn=132000; 7 const double Pi=acos(-1); 8 9 struct Cpx{10 double x,y;11 Cpx(double xx=0,double yy=0){x=xx;y=yy;}12 }X[maxn],Y[maxn];13 Cpx operator *(Cpx a,Cpx b){
return Cpx(a.x*b.x-a.y*b.y,a.x*b.y+a.y*b.x);}14 Cpx operator +(Cpx a,Cpx b){
return Cpx(a.x+b.x,a.y+b.y);}15 Cpx operator -(Cpx a,Cpx b){
return Cpx(a.x-b.x,a.y-b.y);}16 int N,M,rev[maxn],ans[maxn];17 18 void rd(Cpx *A){19 char c=getchar();20 while(c<'0'||c>'9') c=getchar();21 int i=N-1;22 while(c>='0'&&c<='9') A[i--].x=(int)(c-'0'),c=getchar();23 }24 25 void fft(Cpx *A,int opt){26 for(int i=0;i
>1]>>1)|((i&1)<<(j-1));45 fft(X,1);fft(Y,1);46 for(i=0;i
=0&&!ans[i];i--);50 for(;i>=0;i--) printf("%d",ans[i]);51 }

 

转载于:https://www.cnblogs.com/Ressed/p/9376999.html

你可能感兴趣的文章
用代码生成器生成的DAL数据访问操作类 基本满足需求了
查看>>
28初识线程
查看>>
Monkey测试结果分析
查看>>
Sublime Text 3 设置
查看>>
浅谈C++底层机制
查看>>
STL——配接器、常用算法使用
查看>>
第9课 uart
查看>>
Range和xrange的区别
查看>>
STL容器之vector
查看>>
无法向会话状态服务器发出会话状态请求
查看>>
数据中心虚拟化技术
查看>>
01入门
查看>>
复习文件操作
查看>>
SQL Server 使用作业设置定时任务之一(转载)
查看>>
第二阶段冲刺-01
查看>>
BZOJ1045 HAOI2008 糖果传递
查看>>
发送请求时params和data的区别
查看>>
JavaScript 克隆数组
查看>>
eggs
查看>>
一步步学习微软InfoPath2010和SP2010--第七章节--从SP列表和业务数据连接接收数据(4)--外部项目选取器和业务数据连接...
查看>>