随笔分类 - FFT\NTT
摘要:由于 wljss 是个没脑子没智商的选手,当初做课件的时候用的是PPT,所以只能传到百度网盘上了. 建议省选前学习 链接 提取码: vzju
阅读全文
摘要:出题人很凉心的把算法写成了题目名 首先我们可以发现每一维的贡献是独立的,这可以从 solve1 里看出来 然后我们可以考虑转化为 DP ,这可以从 solve2 里看出来 我们统计每一维能产生的贡献,就是 a 个 0 面, b 个 1 面, \
阅读全文
摘要:NTT 神仙题,强烈建议先自己推一推式子再看题解,顺便orz memset0。 题面没看太懂,大概意思就是求有n个不同的小球,放进 1、2、……n 个不同的盒子,不可空的情况下,期望用了几个盒子。 按照套路,我们应该分别求出总的方案数gi和总共用的盒子数 fi ,答案就
阅读全文
摘要:FFT好题。 首先我们考虑如何用组合数学来求解。先放一下结论: Ans[i]=i∑j=1ajCj1j+k2Cijij+k1 给一个简略的证明: 还是组合数学的老套路,我们考虑每一个位置对答案的贡献,贡献就是 $a_j
阅读全文
摘要:FFT神仙题,强烈建议先自己推一推式子再看题解。 首先正着想比较难想,正难则反,所以我们先考虑一下全集。设g[n]=2C2n(C为组合数),表示n个有标号的点随便连边的方案数,设f[n]是n个有标号的点的无向连通图的方案数。 考虑g和f之间的关系
阅读全文
摘要:首先数相同,位置不同的算作不同的方案,每多出一个位置就能多转移一次,所以我们可以写出这样的转移。 C[k]=∑i×j%m==kA[i]×B[j] 我们平时写的FFT/NTT都是加号,这里是乘号,想要把乘号变成加号就要取log
阅读全文
摘要:又是一道FFT 好题。 首先来看一看求前缀和。 求一次前缀和就先当于卷上一个系数全为1的多项式,即∞∑i=0xi(~~想一想,为什么~~),这个东西就等于 11x,简单证明一下。 $$
阅读全文
摘要:温馨提示:倘若下角标看不清的话您可以尝试放大。 倘若没有通配符的话可以用KMP搞一搞。 听巨佬说通配符可以用FFT搞一搞。 我们先考虑一下没有通配符的怎么搞。我们设a=1,b=2,...,然后我们构造一个这样的函数$\displaystyle P_x=\sum_{i=0}^{m 1}(A_i B_{
阅读全文
摘要:两个数列的加和移动其实可以看成是一个数列的加减和移动。(~~想一想,为什么~~) 我们设第一个数列加的值为k, 则 $$ \displaystyle \sum _{i=1}^{n}(x_i+k y_i)^2\\=\displaystyle \sum_{i=1}^n(x_i^2+k^2+y_i^2+2
阅读全文
摘要:正难则反,首先概率就是合法的方案数总的方案数=总的方案数不合法的方案数总的方案数, 统计不合法的方案数只需要 两个较短的边的长度和≤较长的边,用t[i]表示长度大于等于i的木棍的数量,f[i]为长度为i的木棍的数量,g[i]表示选出两根木棍组成和
阅读全文