
多项式
C202044zxy
这个作者很懒,什么都没留下…
展开
-
[HAOI2018]染色
一、题目点此看题二、解法我记得当时考试时候拿了505050分,还是挺不错了(就是不会写NTT\tt NTTNTT)看到恰好出现原创 2020-08-26 16:27:04 · 140 阅读 · 0 评论 -
CF623E Transforming Sequence
一、题目点此看题二、解法首先有一个显然的dpdpdp,设dp[i][j]dp[i][j]dp[i][j]为前iii轮选jjj个的方案数:dp[i][k]=∑dp[i−1][j]×C(n−j,j−k)×2jdp[i][k]=\sum dp[i-1][j]\times C(n-j,j-k)\times 2^jdp[i][k]=∑dp[i−1][j]×C(n−j,j−k)×2j发现这样很不好优化,我们设f[i][j]=dp[i][j]C(n,j)f[i][j]=\frac{dp[i][j]}{C(n,j)原创 2020-06-19 11:01:47 · 216 阅读 · 0 评论 -
[雅礼集训 2018 Day4]Magic
一、题目点此看题二、解法容斥是不难想到的,我的主要瓶颈在于算钦定有xxx对魔术对的方案数。这里有两种思路,第一种是安排法(都是蒟蒻作者乱取的名字),也就是我们通过直接安排顺序来算方案数,第二种是插入法,也就是我们通过插入的方式使之满足条件,本题第一种方法应该是走不通的,让我们来康康第二种方法。我们先把n−xn-xn−x张牌随便乱放(插入不是在长度为nnn的格子上填数,你可以理解为动态数组),所以这样的方案数是(n−x)!(n-x)!(n−x)!,但是还要考虑相同的之间的顺序就很麻烦,我们干脆把相同的原创 2020-06-07 12:04:41 · 184 阅读 · 0 评论 -
[BZOJ 4259]残缺的字符串
一、题目点此看题二、解法我们一般的匹配多是第一种形式,如果我们把某一个字符串翻转,那么匹配的形式就变成了第二种,是不是很像卷积的形式,如果我们把匹配当做卷积的话,那么时间是允许的,我们考虑这种方法。首先通配符可以看做000,我们可以把某个位置yyy匹配成功的条件写成:∑i=1yTi×Sy−i+1×(Ti−Sy−i+1)2\sum_{i=1}^y T_i\times S_{y-i+1}\...原创 2020-01-21 07:59:48 · 224 阅读 · 0 评论 -
Shlw loves matrixI
常系数齐次线性递推模板题原创 2020-01-03 16:20:25 · 178 阅读 · 0 评论 -
[ZJOI2019]开关
一、题目点此看题二、解法考虑每个灯的生成函数,那么答案的生成函数为它们的乘积,设P=∑piP=\sum p_iP=∑pi:F(x)=∏i=1nepiPx+(−1)sie−piPx2F(x)=\prod_{i=1}^n \frac{e^{\frac{p_i}{P}x}+(-1)^{s_i}e^{-\frac{p_i}{P}x}}{2}F(x)=i=1∏n2ePpix+(−1)sie...原创 2020-01-02 23:16:46 · 195 阅读 · 0 评论 -
Tibbar的后花园
指数型生成函数(EGF)的应用,多项式exp原创 2019-12-29 22:45:18 · 255 阅读 · 0 评论 -
城市规划
一、题目点此看题二、解法求无向联通图的个数是在是太难做了,我们考虑从无向图个数方面入手。设g(i)g(i)g(i)表示无向图点数为iii的总数,考虑每一条边的选与不选,方案数是2C(n,2)2^{C(n,2)}2C(n,2),设f(i)f(i)f(i)为无向连通图的点数为iii的方案数,那么我们可以用fff来算ggg,枚举一边联通,另外一边随便选:g(i)=∑j=1iCi−1j−1⋅f(...原创 2019-12-28 20:56:56 · 326 阅读 · 0 评论 -
[TJOI2019]唱、跳、rap和篮球
一、题目点此看题二、解法先枚举iii,表示有iii段人在讨论蔡徐坤,那么在nnn中选iii段的方案数是Cn−3iiC_{n-3i}^iCn−3ii,可以理解为将444个点看成一个点,就是在n−3in-3in−3i个点中选出iii个点作为讨论蔡徐坤的点,可以用组合数。考虑对iii容斥,那么答案就是:∑i=0up(−1)i×Cn−3ii×[剩下数的可重集的排列]\sum_{i=0}^{up...原创 2019-12-27 17:09:00 · 243 阅读 · 0 评论 -
Chocolate
一、题目题目描述一个口袋中装有巧克力,巧克力的颜色有ccc种。现从口袋中取出一个巧克力,若取出的巧克力与桌上某一已有巧克力颜色相同,则将两个巧克力都取走,否则将取出的巧克力放在桌上。设从口袋中取出每种颜色的巧克力的概率均等。求取出nnn个巧克力后桌面上剩余mmm个巧克力的概率。数据范围1≤c≤100,1≤n,m≤10000001\leq c\leq 100,1\leq n,m\leq 10...原创 2019-12-26 20:39:59 · 301 阅读 · 0 评论 -
[SDOI2017]遗忘的集合
一、题目点此看题二、解法考虑生成函数,最后的方案数其实是若干个母函数闭形式相乘的一个多项式,可列出下式:F(x)=∏i=1n(11−xi)aiF(x)=\prod_{i=1}^n (\frac{1}{1-x^i})^{a_i}F(x)=i=1∏n(1−xi1)ai先推一波柿子:ln(F(x))=∑i=1nailn(11−xi)\ln(F(x))=\sum_{i=1}^na_i\...原创 2019-12-26 16:08:25 · 142 阅读 · 0 评论 -
[CQOI2018]九连环
一、题目点此看题二、解法根据题目中444连环的解释,你可以发现拆除444连环满足如下规律:拆掉一个222连环,使得原环变成110011001100拿掉最左边的111加二连环使其变为011101110111拆三连环这就完成了一个问题的转化,由于拆和加环效果相同,我们定义dpidp_idpi为拆掉iii连环需要的步数,则有递推式:dp[i]=2⋅dp[i−2]+dp[i−1]+...原创 2019-12-23 16:29:08 · 209 阅读 · 0 评论 -
小朋友和二叉树
一、题目Description我们的小朋友很喜欢计算机科学,而且尤其喜欢二叉树。考虑一个含有n个互异正整数的序列c[1],c[2],…,c[n]。如果一棵带点权的有根二叉树满足其所有顶点的权值都在集合{c[1],c[2],…,c[n]}中,我们的小朋友就会将其称作神犇的。并且他认为,一棵带点权的树的权值,是其所有顶点权值的总和。给出一个整数m,你能对于任意的s(1<=s<=m)...原创 2019-12-22 18:26:11 · 438 阅读 · 2 评论 -
[学习笔记]多项式的各种操作
多项式求逆点此看题可以暴力递推,时间复杂度O(n2)O(n^2)O(n2)。倍增可以将之优化到O(nlogn)O(n\log n)O(nlogn),我们先从111开始倍增,假设现在倍增到了ppp,得到了模xpx^pxp的逆元B′(x)B'(x)B′(x),现在我们要求B(x)B(x)B(x),显然这时候求出来的B′(x)B'(x)B′(x)是B(x)B(x)B(x)的一部分,有下列关系式:...原创 2019-12-20 15:25:07 · 455 阅读 · 2 评论 -
Maze
一、题目二、解法先考虑朴素dpdpdp把,设f[i][j]f[i][j]f[i][j]为从(1,1)(1,1)(1,1)走向位置(i,j)(i,j)(i,j)的方案数,则有转移:f[i][j]=∑j−j′≤k−1f[i−1][j′]×b[j−j′]f[i][j]=\sum_{j-j'\leq k-1} f[i-1][j']\times b[j-j']f[i][j]=j−j′≤k−1∑f[...原创 2019-12-19 20:10:05 · 176 阅读 · 0 评论 -
[HEOI2016/TJOI2016]求和
一、题目点此看题二、解法0x01 前置芝士第二类斯特林数的模型是把nnn个不同的小球放进mmm个相同的盒子中,要求盒子非空的方案数,记作S(n,m)S(n,m)S(n,m)。递推式:S(n,m)=S(n−1,m−1)+m⋅S(n−1,m)S(n,m)=S(n-1,m-1)+m\cdot S(n-1,m)S(n,m)=S(n−1,m−1)+m⋅S(n−1,m),也就是考虑加入一个球或一个盒...原创 2019-12-19 18:17:36 · 147 阅读 · 0 评论 -
[模板]任意模数NTT
一、题目点此看题二、解法所谓任意模数NTT\text{NTT}NTT其实就是跑三遍普通NTT\text{NTT}NTT,用大质数来还原结果。我们选的质数是:469762049,998244353,1004535809469762049,998244353,1004535809469762049,998244353,1004535809,它们的原根都是333。设我们跑出来的三个答案分别是a...原创 2019-12-19 14:41:54 · 254 阅读 · 0 评论 -
[SDOI2015]序列统计
一、题目点此看题二、解法第一次写NTT\text{NTT}NTT,被搞自闭了。0x01 朴素dp设f[i][j]f[i][j]f[i][j]为选iii个数乘积为jjj的方案数,转移如下:f[2i][j]=f[i][k]×f[i][j×invk]f[2i][j]=f[i][k]\times f[i][j\times inv_k]f[2i][j]=f[i][k]×f[i][j×invk]...原创 2019-12-18 20:38:52 · 130 阅读 · 0 评论 -
[AH2017/HNOI2017]礼物
一、题目点此看题二、解法先推一波式子,(ai+x−bi)2=ai2+bi2+x2+2x(ai−bi)−2aibi(a_i+x-b_i)^2=a_i^2+b_i^2+x^2+2x(a_i-b_i)-2a_ib_i(ai+x−bi)2=ai2+bi2+x2+2x(ai−bi)−2aibi对于这个式子可以分开考虑,最后一项需要求最大值,其余项通过枚举x(−100≤x≤100)x(...原创 2019-12-18 12:59:15 · 145 阅读 · 0 评论 -
[ZJOI2014]力
一、题目点此看题二、解法设gi=1i2g_i=\frac{1}{i^2}gi=i21,考虑对式子进行等价变化,Ej=∑i<jqigj−i−∑i>jqigi−jE_j=\sum_{i<j}q_ig_{j-i}-\sum_{i>j}q_ig_{i-j}Ej=∑i<jqigj−i−∑i>jqigi−j对于前面的那个式子,很容易发现是卷积的形式...原创 2019-12-17 09:58:41 · 137 阅读 · 0 评论 -
HDU 1042 n!
一、题目DescriptionGiven an integer N(0 ≤ N ≤ 10000), your task is to calculate N!InputOne N in one line, process to the end of file.OutputFor each N, output N! in one line.二、解法高精度相乘可以用FFT\text{FF...原创 2019-12-17 09:11:36 · 119 阅读 · 0 评论 -
快速傅立叶之二
一、题目Description请计算C[k]=sigma(a[i]*b[i-k]) 其中 k < = i < n ,并且有 n < = 10 ^ 5。 a,b中的元素均为小于等于100的非负整数。Input第一行一个整数N,接下来N行,第i+2…i+N-1行,每行两个数,依次表示a[i],b[i] (0 < = i < N)。Output输出N行,每行一个...原创 2019-12-16 21:16:07 · 294 阅读 · 0 评论 -
FFT快速傅立叶
一、题目Description给出两个n位10进制整数x和y,你需要计算xy。Input第一行一个正整数n。 第二行描述一个位数为n的正整数x。 第三行描述一个位数为n的正整数yOutput输出一行,即xy的结果。数据范围:n<=60000二、解法一个整数x=anan−1....a0x=a_na_{n-1}....a_0x=anan−1....a0,就可以看做一个f...原创 2019-12-16 20:57:45 · 155 阅读 · 0 评论 -
[学习笔记]FFT
转载大佬的博客#include <cstdio>#include <cmath>const int MAXN = 3000005;const double pi = acos(-1.0);int read(){ int num=0,flag=1;char c; while((c=getchar())<'0'||c>'9')if(c==...原创 2019-12-16 20:33:39 · 213 阅读 · 0 评论