![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数论---多项式相关
文章平均质量分 76
forezxl
水君一枚
展开
-
FFT简介(洛谷P1919/3803/4245、BZOJ2179)
学习自FFT详解。很久前就想学,然而一直不能理解,这两天稍微懂了一些。含义及用途FFT(Fast Fourier Transformation)是离散傅氏变换(DFT)的快速算法。即为快速傅氏变换。它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的,把多项式乘法的复杂度从O(n2)O(n2)O(n^2)降到了O(nlogn)O(nlogn)O(n\log...原创 2018-07-08 20:32:31 · 563 阅读 · 0 评论 -
BZOJ3527: [Zjoi2014]力(洛谷P3338)
FFTBZOJ题目传送门 洛谷题目传送门推式子: Ei=∑j=1i−1qj(i−j)2−∑j=i+1nqj(i−j)2=∑j=1i−1f1(j)f2(i−j)−∑j=i+1nf1(j)f2(i−j)(5)(6)(5)Ei=∑j=1i−1qj(i−j)2−∑j=i+1nqj(i−j)2(6)=∑j=1i−1f1(j)f2(i−j)−∑j=i+1nf1(j)f2(i−j)\begin{a...原创 2018-07-09 13:00:53 · 183 阅读 · 0 评论 -
BZOJ4827 [Hnoi2017]礼物(洛谷P3723)
FFTBZOJ题目传送门 洛谷题目传送门咕了大半个月。。。设旋转后两个数列分别为{an}{an}\{a_n\}和{bn}{bn}\{b_n\},则答案为∑ni=1(ai−bi+c)2∑i=1n(ai−bi+c)2\sum_{i=1}^n(a_i-b_i+c)^2推式子: ==∑i=1n(ai−bi+c)2∑i=1n(ai−bi)2+2c(ai−bi)+c2∑i=1n(a2i+b...原创 2018-07-25 20:11:30 · 219 阅读 · 0 评论 -
BZOJ4589 Hard Nim
FWT题目传送门首先后手必胜的条件是石子数异或和为0。因为石子数只能是质数个,那么我们构造一个向量,维数为质数的打上1,其它的都是0,那么方案数就是n个向量的异或卷积。FWT后快速幂一下再FWT回来就好了。代码:#include<cstdio>#include<cstring>#include<algorithm>#define N 1...原创 2018-08-11 14:33:28 · 163 阅读 · 0 评论 -
FWT简介(洛谷P4717)
用途Fast Walsh-Hadamard Transform,即FWT,用来解决形如ci=∑j⊕k=iajbkci=∑j⊕k=iajbkc_i=\sum_{j\oplus k=i}a_jb_k一类的卷积,其中⊕⊕\oplus表示位运算(xor/or/andxor/or/and\text{xor/or/and})。过程类比FFT,我们可以构造出一个变换使得aiaia_i和bjbjb...原创 2018-08-07 20:42:30 · 442 阅读 · 0 评论 -
NTT简介
算法用途多项式乘法系数取模。前置知识原根,FFT。原根阶:若(a,p)=1(a,p)=1(a,p)=1,则满足ar≡1(modp)ar≡1(modp)a^r \equiv 1 (\mod p)的最小的rrr被称为aaa模ppp的阶。原根:如果r=φ(p)r=φ(p)r=\varphi(p),则称aaa为modpmodp\mod p意义下的原根。原根有一个判定方法:把...原创 2018-08-30 21:48:55 · 3179 阅读 · 0 评论