码迷,mamicode.com
首页 > 其他好文 > 详细

FFT [TPLY]

时间:2018-01-06 14:22:19      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:文字   icp   变换   details   书籍推荐   另一个   表达   运算   ...   

FFT [TPLY]

题目链接
https://www.luogu.org/problemnew/show/1919
https://www.luogu.org/problemnew/show/3803

资料推荐

orz大佬博客
http://www.cnblogs.com/cjoieryl/p/8206721.html (orz YL大佬)
http://blog.csdn.net/iamzky/article/details/22712347 (超级易懂)

知识点
复数:
https://baike.baidu.com/item/%E5%A4%8D%E6%95%B0/254365?fr=aladdin
单位根(单位复数根)
https://baike.baidu.com/item/%E5%8D%95%E4%BD%8D%E6%A0%B9
多项式表示
http://blog.csdn.net/acdreamers/article/details/39005227
卷积
http://blog.csdn.net/bitcarmanlee/article/details/54729807

书籍推荐
ACM/ICPC 算法基础训练教程 7.4快速傅里叶变换
算法导论 30章多项式与快速傅里叶变换

觉得看不懂很正常,知识点很抽象需要逐步理解
而对于本文,本文作用为对两位大佬内容解读并且加入自己看法
读者可以先花时间阅读以上推荐的文字,产生一定理解再读本文.由于作者很弱,可能会产生错误,还请大神帮忙指出.

正文

FFT作用

作用:求多项式乘法的系数(就是初中学的多项式)
FFT多项式乘法与普通形式有差异

一般多项式乘多项式法则:
多项式与多项式相乘,先用一个多项式的每一项与另一个多项式的每一项相乘,再把所得的积相加。
由多项式乘多项式法则可以得到(a+b)(c+d)=a(c+d)+b(c+d)=ac+ad+bc+bd

而FFT相当于‘绕了一个圈‘,
先从多项式最普通的表达形式---系数表达形式
转化成点值表达形式

(我的理解 : 点值表达形式就是用若干函数上的点的坐标来表示该函数,比如 f(x)=x^2-x+2={ ( 0 , 2 ) , ( 1 , 2 ) , ( 2 , 4 ) })

再进行点值表达式的运算,也就是点值乘法
最后,再将点值乘法的结果转回系数表达形式
就像绕了一个大圈

图片如下:(借鉴他人博客)
技术分享图片

未完待续...

FFT [TPLY]

标签:文字   icp   变换   details   书籍推荐   另一个   表达   运算   ...   

原文地址:https://www.cnblogs.com/tply/p/8213815.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!