
FFT&NTT
文章平均质量分 79
ez_yww
这个作者很懒,什么都没留下…
展开
-
【XSY2119】【BZOJ3992】【SDOI2015】序列统计 原根 NTT
题目大意 有一个集合ss,里面的每个数都≥0\geq0且<m<m。 问有多少个长度为nn的数列满足这个数列所有数的乘积模mm为xx。答案模10045358091004535809。 n≤109,m≤8000n\leq {10}^9,m\leq 8000且mm是质数。题解 先求出mm的原根gg,这样11~m−1m-1中的每个数都能被表示成gg的幂。 因为gigj=gi+jg^ig^j=g^{原创 2017-08-28 16:40:19 · 287 阅读 · 0 评论 -
【XSY2730】Ball 多项式exp 多项式ln 多项式开根 常系数线性递推 DP
题目大意 一行有nn个球,现在将这些球分成kk 组,每组可以有一个球或相邻两个球。一个球只能在至多一个组中(可以不在任何组中)。求对于1≤k≤m1\leq k\leq m的所有kk分别有多少种分组方法。 答案对998244353998244353取模。 n≤109,m219n\leq {10}^9,m题解 因为k>nk>n的项都是00,所以我们钦定m≤nm\leq原创 2018-01-16 10:58:47 · 1184 阅读 · 0 评论 -
【XSY2666】排列问题 DP 容斥原理 分治FFT
题目大意 有nn种颜色的球,第ii种有aia_i个。设m=∑aim=\sum a_i。你要把这mm个小球排成一排。有qq个询问,每次给你一个xx,问你有多少种方案使得相邻的小球同色的对数为xx。 n≤10000,m≤200000n\leq 10000,m\leq 200000题解 我们考虑把这些小球分段,每段内所有小球颜色相同,但相邻两段的小球颜色可以相同。 设第ii种颜色有bib_i段,那原创 2017-12-23 19:31:47 · 482 阅读 · 0 评论 -
【BZOJ5119】【CTT2017】生成树计数 DP 分治FFT 斯特林数
题目大意 有nn个点,点权为aia_i,你要连接一条边,使该图变成一颗树。 对于一种连边方案TT,设第ii个点的度数为did_i,那么这棵树的价值为: val(T)=(∏i=1nadiidmi)(∑i=1ndmi)val(T)=(\prod_{i=1}^na_i^{d_i}d_i^m)(\sum_{i=1}^nd_i^m) 求所有生成树的价值和mod998244353\bmod 99原创 2017-12-12 10:02:03 · 905 阅读 · 0 评论 -
【XSY2524】唯一神 状压DP 矩阵快速幂 FFT
题目大意 给你一个网格,每个格子有概率是11或是00。告诉你每个点是00的概率,求11的连通块个数modd=0\bmod d=0的概率。 最开始所有格子的概率相等。有qq次修改,每次修改一个格子的概率。要求输出初始时和每次修改后的概率。 n≤200000,m≤3,d≤10,q≤1000n\leq 200000,m\leq 3,d\leq 10,q\leq 1000题解 很容易想到状压DP:前原创 2017-12-20 07:41:57 · 435 阅读 · 0 评论 -
FFT欢乐测速
单位时间为跑一次次数为218=2621442^{18}=262144的FFT所需时间。 我写法的常数和屎一样,不知道比zjt慢到哪里去了。多项式乘法:88多项式求逆:12.712.7多项式开根:32.632.6多项式ln:18.318.3多项式exp:43.143.1原创 2017-11-21 10:20:50 · 351 阅读 · 0 评论 -
【BZOJ3625】【CF438E】小朋友和二叉树 NTT 生成函数 多项式开根 多项式求逆
题目大意 考虑一个含有nn个互异正整数的序列c1,c2,…,cnc_1,c_2,\ldots ,c_n。如果一棵带点权的有根二叉树满足其所有顶点的权值都在集合{c1,c2,…,cn}\{c_1,c_2,\ldots ,c_n\}中,我们的小朋友就会将其称作神犇的。并且他认为,一棵带点权的树的权值,是其所有顶点权值的总和。 给出一个整数mm,你能对于任意的s(1≤s≤m)s(1\leq s\l原创 2017-11-21 09:31:47 · 335 阅读 · 0 评论 -
【XSY1332】【BZOJ3456】轩辕朗的城市规划 无向连通图计数 CDQ分治 FFT 多项式求逆 多项式ln
题解 设fif_i为nn个点组成的无向图个数,gig_i为nn个点组成的无向连通图个数 经过简单的推导(枚举11所在的连通块大小),有: fi=2n(n−1)2f_i=2^{\frac{n(n-1)}{2}}gi=fi−∑j=1i−1(n−1j−1)gjfi−j=fi−(i−1)!∑j=1i−1gj(j−1)!fi−j(i−j)!\begin{align}g_i&=f_i-\sum_{原创 2017-09-05 18:47:05 · 655 阅读 · 0 评论 -
【XSY2612】Comb Avoiding Trees 生成函数 多项式求逆 矩阵快速幂
题目大意 本题的满二叉树定义为:不存在只有一个儿子的节点的二叉树。 定义一棵满二叉树AA包含满二叉树BB当且经当AA可以通过下列三种操作变成BB:把一个节点的两个儿子同时删掉把一棵子树替换成根的的左子树或右子树。 定义kk连树为一棵只有恰好kk个叶子的满二叉树,如果某个节点有一个右孩子,那么这个右孩子一定是一个叶子。 对于给定的kk和nn,对于所有在11到nn之间的ii,你需要求出所有叶原创 2017-11-02 21:23:39 · 694 阅读 · 0 评论 -
【XSY1529】小Q与进位制 分治 FFT
题目大意 小Q发明了一种进位制,每一位的变化范围是00~bi−1b_i-1,给你一个这种进位制下的整数aa,问你有多少非负整数小于aa。结果以十进制表示。 n≤120000,0≤ai<bi≤1000000n\leq 120000,0\leq a_i<b_i\leq 1000000题解 就是求这个数。 那没什么好说的,直接分治FFT 处理左半边(低位)的c1=∏bic_1=\prod原创 2017-08-18 07:32:03 · 526 阅读 · 0 评论 -
【XSY2166】Hope 分治 FFT
题目描述 对于一个11到nn的排列a1,a2,a3,…,ana_1,a_2,a_3,\ldots,a_n,我们定义这个排列的PP值和QQ值: 对于每个aia_i,如果存在一个最小的jj使得i<ji<j且ai<aja_i<a_j,那么将aia_i和aja_j连一条无向边。于是就得到一幅图。计算这幅图每个联通块的大小,将它们相乘,得到PP。记Q=PkQ=P^k。 对于11到nn的所有排列,我们原创 2017-11-02 20:44:49 · 344 阅读 · 0 评论 -
【XSY2535】整数 NTT
题目描述 问有多少个满足以下要求的kk进制数: 1.每个数字出现的次数不超过nn 2.00没有出现过 3.若gi,j=0g_{i,j}=0,则ii不能出现恰好jj次。 两次询问之间会修改gg中一个位置的值(00变11或11变00)。 输出所有询问的答案的和。 3≤k≤10,n≤14000,m≤203\leq k\leq 10,n\leq 14000,m\leq 20 模数p=7原创 2017-10-06 16:32:06 · 372 阅读 · 0 评论 -
【XSY2332】Randomized Binary Search Tree 概率DP FFT
题目描述 ∀0≤i<n\forall 0\leq i<n,求有多少棵nn个点,权值和优先级完全随机的treap的树高为ii。 n≤30000n\leq 30000题解 设fi,jf_{i,j}为jj个点的树,树高不超过为ii的概率 fi,j=1j∑k=1jfi−1,j−1×fi−1,j−kf_{i,j}=\frac{1}{j}\sum_{k=1}^{j}f_{i-1,j-1}\times原创 2017-10-08 20:49:41 · 263 阅读 · 0 评论 -
【XSY1301】原题的价值 第二类斯特林数 NTT
题目描述 给你n,mn,m,求所有nn个点的简单无向图中每个点度数的mm次方的和。 n≤109,m≤105n\leq {10}^9,m\leq {10}^5题解 gng_n为nn个点的无向图个数,fnf_n为nn个点的答案。 gnfn=2(n2)=ngn−1∑i=0n−1(n−1i)im=ngn−1∑i=0n−1(n−1i)∑j=0i(ij)S(m,j)j!=ngn−1∑i=0n−1∑j=0原创 2017-09-20 19:37:44 · 361 阅读 · 0 评论 -
【XSY2133】【BZOJ4555】【TJOI2016】【HEOI2016】求和 第二类斯特林数 NTT
题目大意 求f(n)=∑ni=0∑ij=02j×j!×S(i,j)f(n)=\sum_{i=0}^n\sum_{j=0}^i2^j\times j!\times S(i,j)\\ 对998244353998244353取模 n≤100000n\leq 100000。题解S(n,k)=1k!∑i=0k(−1)i(ki)(k−i)n=1k!∑i=0k(−1)ik!i!(k−i)!(k−原创 2017-09-02 08:17:25 · 963 阅读 · 0 评论 -
【XSY1728】【BZOJ3771】Triple 生成函数 FFT 容斥原理
题目大意 有nn把斧头,不同斧头的价值都不同且都是[0,m][0,m]的整数。你可以选11~33把斧头,总价值为这三把斧头的价值之和。请你对于每种可能的总价值,求出有多少种选择方案。 选22把斧头时,(a,b)(a,b)和(b,a)(b,a)视为一种方案。选33把斧头时,(a,b,c),(b,c,a),(c,a,b),(c,b,a),(b,a,c),(a,c,b)(a,b,c),(b,c,a),原创 2017-08-28 18:52:46 · 350 阅读 · 0 评论 -
【BZOJ4944】【NOI2017】泳池 概率DP 常系数线性递推 特征多项式 多项式取模
题目大意 有一个1001×n1001×n1001\times n的的网格,每个格子有qqq的概率是安全的,1−q1−q1-q的概率是危险的。 定义一个矩形是合法的当且仅当: 这个矩形中每个格子都是安全的 必须紧贴网格的下边界 问你最大的合法子矩形大小为kkk的概率是多少。 n≤109,k≤1000n≤109,k≤1000n\leq {10}^9,k...原创 2017-11-30 18:51:38 · 2482 阅读 · 7 评论