随笔分类 -  数论——多项式——FFT与NTT

摘要:题面 "传送门" 题解 肝了一个下午……我老是忘了拉格朗日反演计算的时候多项式要除以一个$x$……结果看它推倒简直一脸懵逼…… 做这题首先你得知道拉格朗日反演是个什么东西 "这里" 请坐稳,接下来就要开始推倒了 首先我们要知道$n$个点的有根无向连通图的个数,带标号 设$G(x)$为$n$个点有根无 阅读全文
posted @ 2019-03-05 17:28 bztMinamoto 阅读(407) 评论(0) 推荐(0)
摘要:题面 "传送门" 题解 首先你得知道什么是拉格朗日反演 "这里" 我们列出树的个数的生成函数 $$T(x)=x+\prod_{i\in D}T^i(x)$$ $$T(x) \prod_{i\in D}T^i(x)=x$$ 我们记$F(x)=T(x)$,$G(x)=x \prod_{i\in D}x^ 阅读全文
posted @ 2019-03-05 13:12 bztMinamoto 阅读(555) 评论(0) 推荐(0)
摘要:题面 "传送门" 前置芝士 矩阵树,基本容斥原理,生成函数,多项式$\exp$ 题解 我也想哭了……orz rqy,orz shadowice 我们设$T1,T2$为两棵树,并定义一个权值函数$w(T1,T2)=y^{n |T1\cap T2|}$,其中$|T1\cap T2|$为两棵树共同拥有的边 阅读全文
posted @ 2019-02-27 18:43 bztMinamoto 阅读(427) 评论(2) 推荐(0)
摘要:题面 传送门 题解 生成函数这厮到底还有什么是办不到的…… 首先对于一个数$i$,如果存在的话可以取无限多次,那么它的生成函数为 \(\sum_{j=0}^{\infty}x^{ij}={1\over 1-x^i}\) 然后我们设$a_i\in [0,1]$表示这个数是否存在这个集合里,那么给出了$ 阅读全文
posted @ 2019-02-26 18:37 bztMinamoto 阅读(268) 评论(0) 推荐(0)
摘要:"传送门" 人傻常数大.jpg 因为求逆的时候没清零结果调了几个小时…… 前置芝士 多项式除法,多项式求逆 什么?你不会?左转你谷模板区,包教包会 题解 首先我们要知道一个结论$$f(x_0)\equiv f(x)\pmod{(x x_0)}$$ 其中$x_0$为一个常量,$f(x_0)$也为一个常 阅读全文
posted @ 2019-02-13 19:52 bztMinamoto 阅读(1143) 评论(0) 推荐(1)
摘要:"传送门" 咱用的是拆系数$FFT$因为咱真的不会三模数$NTT$…… 简单来说就是把每一次多项式乘法都改成拆系数$FFT$就行了 如果您还不会多项式求逆的左转 "这里" 顺带一提,因为求逆的时候要乘两次,两次分开乘,否则会像咱一样炸精度 //minamoto include define R re 阅读全文
posted @ 2019-01-17 21:36 bztMinamoto 阅读(241) 评论(0) 推荐(0)
摘要:题面 题解 幸好咱不是在晚上做的否则咱就不用睡觉了……都什么年代了居然还会出高精的题…… 先考虑如果暴力怎么做,令$G(x)$为$F(n,k)$的生成函数,那么不难发现 \(G^R(x)=\prod_{i=1}^n(x+i)\) 也就是说如果把$G(x)$的系数反过来就是后面那个东西,所以对于$n\ 阅读全文
posted @ 2019-01-17 17:10 bztMinamoto 阅读(323) 评论(0) 推荐(0)
摘要:"传送门" 这里用的拆系数$FFT$(咱实在是不会三模……) 就是说把$F_i$和$G_i$中的每一个数字都拆成$k\times M+b$的形式,这里$M$可以取$2^{15}=32768$ 于是把$F$拆出来的两个数列和$G$拆出来的两个数列分别相乘,最终对应的系数要乘上$1,2^{15},2^{ 阅读全文
posted @ 2019-01-17 14:30 bztMinamoto 阅读(336) 评论(0) 推荐(0)
摘要:传送门 好神仙的题目……又一次有了做一题学一堆的美好体验 据说本题有第二类斯特林数+分治$FFT$的做法,然而咱实在看不懂写的是啥,题解贴这里,有兴趣的可以自己去瞅瞅~~,看懂了记得回来跟咱讲讲~~ 前置芝士 $prufer$序列 $prufer$序列是个啥? 对于一棵无根树,我们找到它的标号最小的 阅读全文
posted @ 2019-01-16 07:32 bztMinamoto 阅读(708) 评论(0) 推荐(2)
摘要:"传送门" 话说分治$FFT$是个啥子啊……还有题目里那字好像念(蕈xùn) 首先考虑无解的情况:区间相交或者$L_n\neq n$ 这两个都可以感性理解一下 所以区间之间只会有包含关系,我们把每个小区间向它右边的第一个包含它的大区间连边,那么会构成一个树形结构 对于一个大区间来说,那些作为它儿子的 阅读全文
posted @ 2019-01-15 09:53 bztMinamoto 阅读(417) 评论(0) 推荐(0)
摘要:"传送门" 首先,如果$f(x)=1$,那么根据二项式定理,有$Q(f,n,k)=1$ 当$f(x)=x$的时候,有$$Q=\sum_{i=0}^ni\times \frac{n!}{i!(n i)!}k^i(1 k)^{n i}$$ $$Q=\sum_{i=0}^nnk\times \frac{( 阅读全文
posted @ 2019-01-08 11:43 bztMinamoto 阅读(276) 评论(0) 推荐(1)
摘要:给定两个字符串$S,T$ 求$S$所有长度为$|T|$子串与$T$的距离 两个等长的串的距离定义为最少的,将某一个字符全部视作另外一个字符的次数。 $|T| include include include define R register define fp(i,a,b) for(R int i= 阅读全文
posted @ 2019-01-03 10:29 bztMinamoto 阅读(270) 评论(0) 推荐(0)
摘要:"传送门" 咳咳忘了容斥了…… 设$A(x)$为斧头的生成函数,其中第$x^i$项的系数为价值为$i$的斧头个数,那么$A(x)+A^2(x)+A^3(x)$就是答案~~(于是信心满满的打了一发连样例都没过)~~ 如果按上面那样算的话,会有重复的,比如说$A^2(x)$,会产生诸如$(x_i,x_i 阅读全文
posted @ 2019-01-02 21:40 bztMinamoto 阅读(206) 评论(0) 推荐(0)
摘要:"传送门" 首先,题目所求为$$n\times 2^{C_{n 1}^2}\sum_{i=0}^{n 1}C_{n 1}^ii^k$$ 即对于每个点$i$,枚举它的度数,然后计算方案。因为有$n$个点,且关于某个点连边的时候剩下的边都可以随便连,所以有前面的两个常数 所以真正要计算的是$$\sum_ 阅读全文
posted @ 2019-01-02 20:49 bztMinamoto 阅读(183) 评论(0) 推荐(0)
摘要:"传送门" 首先,因为在$j i$的时候有$S(i,j)=0$,所以原式可以写成$$Ans=\sum_{i=0}^n\sum_{j=0}^nS(i,j)\times 2^j\times j!$$ $$Ans=\sum_{j=0}^n2^j\times j!\sum_{i=0}^nS(i,j)$$ 根 阅读全文
posted @ 2019-01-02 19:34 bztMinamoto 阅读(151) 评论(0) 推荐(0)
摘要:"传送门" 可以去看看 "litble" 巨巨关于第一类斯特林数的总结 设$f(i,j)$为$i$个数的排列中有$j$个数是前缀最大数的方案数,枚举最小的数的位置,则有递推式$f(i,j)=f(i 1,j 1)+(i 1)\times f(i 1,j)$ 这个就是第一类斯特林数 第一类斯特林数中$S 阅读全文
posted @ 2019-01-02 18:49 bztMinamoto 阅读(212) 评论(0) 推荐(0)
摘要:"传送门" 思路太清奇了…… 考虑容斥,即枚举至少有哪几个是在$1$号之后被杀的。设$A=\sum_{i=1}^nw_i$,$S$为那几个在$1$号之后被杀的人的$w$之和。关于杀了人之后分母的变化,我们可以假设这个人被杀之后还活着~~(说好的人被杀就会死呢)~~,不过如果选到了它要再选一次,这个和 阅读全文
posted @ 2019-01-02 16:06 bztMinamoto 阅读(206) 评论(0) 推荐(0)
摘要:"传送门" "题解" 比赛的时候光顾着算某一个$n$的答案是多少忘了考虑不同的$n$之间的联系了……而且我也很想知道为什么推着推着会变成一个二项式反演…… 设$f_n$为$n$块积木时的总的层数,$g_n$为$n$块积木时总的方案数,则有$$g_n=\sum_{i=1}^n\binom{n}{i}g 阅读全文
posted @ 2019-01-02 11:22 bztMinamoto 阅读(155) 评论(0) 推荐(0)
摘要:"传送门" 还是搞不明白生成函数是什么东西…… 首先设对于体积为$v$的物品,它的生成函数为$f(x)=\sum_{i\geq 0} x^{vi}$,那么答案的生成函数就是所有的物品的生成函数的乘积,复杂度为$O(nm\log n)$ 于是考虑把所有生成函数取$\ln$相加再$\exp$回去,设$g 阅读全文
posted @ 2018-12-29 09:28 bztMinamoto 阅读(187) 评论(0) 推荐(0)
摘要:传送门 首先,$n$个点的哈密顿回路共有 \(\frac{n!}{n}2^{C_n^2-n}\) 简单来说就是总共有$\frac{n!}$条哈密顿回路(相当于是圆排列),然后每条哈密顿回路会出现在$2^{C_n^2-n}$张竞赛图中(除了哈密顿回路上的边已经定向,剩下的边的方向随意) 于是现在的问题 阅读全文
posted @ 2018-12-28 22:32 bztMinamoto 阅读(170) 评论(0) 推荐(0)

Live2D