A(x)=A4[0](x*x)+x*A4[1](x*x);
x=1,w,w*w,w*w*w
wi means w^i
n=4;w=w[4]
result shuould be
y[0]=A4[0](1*1)+1*A4[1](1*1);
y[1]=A4[0](w*w)+w*A4[1](w*w);
y[2]=A4[0](w2*w2)+w2*A4[1](w2*w2);
y[3]=A4[0](w3*w3)+w3*A4[1](w3*w3);
1*1=w2*w2=(-1*-1) w2=w0*-1=-1;
w*w=w[2];w3*w3=w(6%4)=w*w=w[2]
w2=-1
w3=-w w3=w(1+4/2);
pro perform
=============
w[n] means e^(2πi/n)
w[4]*w[4]=w[2]
n=2, w=w[2]
A4[0](1),A4[0](w[2])
A[0]=A2[0]+A2[1]
A[1]=A2[0]-A2[1]
----
A4[1](1),A4[1](w[2])
A[2]=A2[2]+A2[3]//0,1
A[3]=A2[2]-A2[3]
==============
n=4;w=w[4]
//两边各取一半就能取到x^2,右边乘上本轮应该有的wk,这样就合理了
y[0]=A4[0](1)+1*A4[1](1)
y[2]=A4[0](1)-1*A4[1](1)
y[1]=A4[0](w[2])+w*A4[1](w[2])
y[3]=A4[0](w[2])-wA4[1](w[2])
===============
0,1,2,3
0,2,1,3
y[0]=a[0]+w[2]0*a[2];
y[1]=a[0]+w[2]1*a[2];
y[2]=a[1]+w[2]0*a[3];
y[3]=a[1]+w[2]1*a[3];
===============
y[0]=a[0]+w[2]0*a[2]+w[4]0*a[1]+w[4]0*w[2]0*a[3];
y[2]=a[0]+w[2]0*a[2]+w[4]2*a[1]+w[4]2*w[2]0*a[3];
w[4]2=-w[4]0
y[1]=a[0]+w[2]1*a[2]+w[4]1*a[1]+w[4]1*w[2]1*a[3];
y[3]=a[0]+w[2]1*a[2]+w[4]3*a[1]+w[4]3*w[2]1*a[3];
w[4]3=-w[4]1
===============
y[2]=a[0]+(w[4]2*w[4]2=w[4]4=1=w[2]0)a[2]+(w[4]2=-w[4]0=-1)....
y[3]=a[0]+(w[2]1=w[4]6=w[4]2=w[2]1)a[2]+(w[4]3=-w[4]1,)....(w[4]3*w[2]1=w[4]5=w[4](5+4)=w[4]9)*a[3];
===============
所以分析一下n=8的情况
首先分成n1=4,n2=4
此时分别递归出两层,
在回溯的时候,y0,y1,y2,y3的意义就是n=4时取的四个特征值的y
n1=4有可以分成n3=2,n4=2两层
每一段的,y0,y1的意义就是n=2时取的两个特征值的y
那么n=2时有四段这样的
其中每两段,左边一段就代表了A4[0],右边一段就代表了A4[1],这样就能合成A8[0],右边的A8[1]同理
那么其实,根据公式yk+4/2也就递推出来了(n=4时),所以连续处理的一段的左一半因为在之前的处理中
就是按照wn升幂的,所以现在直接拿出来,那么他的值就是A8[0](w^0*2),A8[0](w^1*2),A8[0](w^2*2),A8[0](w^3*2)
右边和左边当然是对称的,然后连续一整段的
什么事连续一整段呢,我解释下
像(0,1)(2,3)(4,5)(6,7)
这四段是不连续的,他们的意义都一样,w^0,w^1的取值
而(0,1,2,3,4,5,6,7),
取出的四段则是连续的,(0,4)(1,5)(2,6)(3,7)
所以每一段的旋转系数W,都要按照Wn,每次幂次加一,这样才能对的上yk=A0[(x^k)^2]+x^k*A1[(x^k)^2]
中右边的系数,n=8,最后一次回溯计算则有连续4对,k=0,1,2,3

还有一个需要注意的地方是
W8=e^(2pi*i)/8

W2=e^(2pi*i)/2 =W8*W8*W8*W8
除的数越小,则Wn的次数越高,而不是越低

acm 快速傅里叶变换的理解的更多相关文章

  1. 多项式 之 快速傅里叶变换(FFT)/数论变换(NTT)/常用套路【入门】

    原文链接https://www.cnblogs.com/zhouzhendong/p/Fast-Fourier-Transform.html 多项式 之 快速傅里叶变换(FFT)/数论变换(NTT)/ ...

  2. [学习笔记] 多项式与快速傅里叶变换(FFT)基础

    引入 可能有不少OIer都知道FFT这个神奇的算法, 通过一系列玄学的变化就可以在 $O(nlog(n))$ 的总时间复杂度内计算出两个向量的卷积, 而代码量却非常小. 博主一年半前曾经因COGS的一 ...

  3. 「快速傅里叶变换(FFT)」学习笔记

    FFT即快速傅里叶变换,离散傅里叶变换及其逆变换的快速算法.在OI中用来优化多项式乘法. 本文主要目的是便于自己整理.复习 FFT的算法思路 已知两个多项式的系数表达式,要求其卷积的系数表达式. 先将 ...

  4. 快速傅里叶变换(FFT)详解

    本文只讨论FFT在信息学奥赛中的应用 文中内容均为个人理解,如有错误请指出,不胜感激 前言 先解释几个比较容易混淆的缩写吧 DFT:离散傅里叶变换—>$O(n^2)$计算多项式乘法 FFT:快速 ...

  5. 快速傅里叶变换(FFT)

    扯 去北京学习的时候才系统的学习了一下卷积,当时整理了这个笔记的大部分.后来就一直放着忘了写完.直到今天都腊月二十八了,才想起来还有个FFT的笔记没整完呢.整理完这个我就假装今年的任务全都over了吧 ...

  6. 快速傅里叶变换(FFT)_转载

    FFTFFT·Fast  Fourier  TransformationFast  Fourier  Transformation快速傅立叶变换 P3803 [模板]多项式乘法(FFT) 参考上文 首 ...

  7. HDU 1402 A * B Problem Plus 快速傅里叶变换 FFT 多项式

    http://acm.hdu.edu.cn/showproblem.php?pid=1402 快速傅里叶变换优化的高精度乘法. https://blog.csdn.net/ggn_2015/artic ...

  8. 51Nod 快速傅里叶变换题集选刷

    打开51Nod全部问题页面,在右边题目分类中找到快速傅里叶变换,然后按分值排序,就是本文的题目顺序. 1.大数乘法问题 这个……板子就算了吧. 2.美妙的序列问题 长度为n的排列,且满足从中间任意位置 ...

  9. $FFT$(快速傅里叶变换)

    - 概念引入 - 点值表示 对于一个$n - 1$次多项式$A(x)$,可以通过确定$n$个点与值(即$x$和$y$)来表示这唯一的$A(x)$ - 复数 对于一元二次方程 $$x^2 + 1 = 0 ...

随机推荐

  1. DSL是什么?Elasticsearch的Query DSL又是什么?

    1.DSL简介 DSL 其实是 Domain Specific Language 的缩写,中文翻译为领域特定语言.而与 DSL 相对的就是 GPL,这里的 GPL 并不是我们知道的开源许可证(备注:G ...

  2. 打包遇到错误Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:test

    引自:https://blog.csdn.net/xiexiangyan/article/details/107936774 遇到的问题 有一个maven项目,我clone一下最新的代码.准备打包(m ...

  3. Linux学习安装

    Linux学习安装 服务器指的是网络中能对其他机器提供某些服务的计算机系统,相对普通PC, 服务器指的是高性能计算机,稳定性.安全性要求更高 linux安装学习 1.虚拟机 一台硬件的机器 安装vmw ...

  4. DHCP中继配置

    (三台都需要关闭防火墙 前两台需要安装dhcp ) 第一台linux(vmnet2)(192.168.1.1) vim /etc/sysconfig/network-scripts/ifcfg-ens ...

  5. Hash Array Mapped Trie

    Hash Array Mapped Trie   Python\hamt.c

  6. 【练习】goroutine chan 通道 总结

    1. fatal error: all goroutines are asleep - deadlock! 所有的协程都休眠了 - 死锁! package mainimport("fmt&q ...

  7. LOJ1036

    AHOI 2008 聚会 Y 岛风景美丽宜人,气候温和,物产丰富.Y 岛上有 N 个城市,有 N-1 条城市间的道路连接着它们.每一条道路都连接某两个城市.幸运的是,小可可通过这些道路可以走遍 Y 岛 ...

  8. idea一定要做的配置

    自动编译开关 忽略大小写开关 IDEA默认匹配大小写,如果你开了这个开关,你无论输入String或者string都会出现代码提示或者智能补充 智能导包开关 两个选项勾上:自动导入不明确的结构.智能优化 ...

  9. Python Package(转)

    http://www.cnpythoner.com/post/2.html python中的Module是比较重要的概念.常见的情况是,事先写好一个.py文 件,在另一个文件中需要import时,将事 ...

  10. linux系统命令(调试命令)(nmtui,ip a、ss、ps、uptime、top、lsof、grep,iotop、iftop)

    本章命令 0 1 2 3 4 5 6 7 8 9 10 nmtui ip a ss ps uptime top lsof grep iotop iftop tsar nmtui 图形化管理网卡命令 依 ...