![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
组合数学
文章平均质量分 92
FSYo
我不去想是否能够成功,
既然选择了远方,
便只顾风雨兼程
展开
-
【省选模拟】基因解码 (斯特林数)
CF715ECF715ECF715E对于全部确定的情况,算出 nnn - 环数 即可对于全部不确定的情况,ansi=sn,in!ans_i=s_{n,i}n!ansi=sn,in!否则考虑 pip_ipi 向 qiq_iqi 连边,原图相当于若干条链(以及环,已经成环可以不管了),形如 (0,0),(a,0),(0,a),(a,b)(0,0),(a,0),(0,a),(a,b)(0,0),(a,0),(0,a),(a,b),对于第 4 类对方案数没有贡献分类记为 a,b,ca,b,ca,b原创 2020-06-16 19:56:10 · 162 阅读 · 0 评论 -
【WC2014】时空穿梭(莫比乌斯反演)(组合数学)
传送门考虑枚举各维最大最小坐标的差量 Δi\Delta_iΔi,可以写出式子:Ans=∑Δ(gcd(Δ1...n)−1c−2)∏i=1n(mi−Δi)=∑d(d−1c−2)∑Δ∏i=1n(mi−dΔi)[gcd(Δ1...n)=1]=∑d(d−1c−2)∑lμ(l)∑Δ(∏i=1nmi−dlΔi)=∑T∏i=1n(∑jmi/Tmi−Tj)∑l∣Tμ(l)(d−1c−2)Ans=\sum_{\Delta}\binom{gcd(\Delta_{1...n})-1}{c-2}\prod_{i=1}^n (m原创 2020-06-05 12:43:00 · 274 阅读 · 0 评论 -
经典数数题
「PKUWC2018」猎人杀我们硬点一个集合在 1 后面死然后容斥考虑每次在 [1,n][1,n][1,n] 随机,如果不在集合 SSS 中就跳过,那么每个人死亡的概率是一样的,证明如下wt∑i∈Swi=wt∑i=1nwi(∑i=0n(∑j=1nwj−∑j∈Swj∑j=1nwj)i)\frac{w_t} {\sum_{i\in S}w_i}=\frac{w_t}{\sum_{i=1}^nw_i}(\sum_{i=0}^n(\frac{\sum_{j=1}^nw_j-\sum_{j\in S}w_j}原创 2020-05-22 16:14:21 · 407 阅读 · 1 评论 -
「USACO 2020 US Open Platinum」Circus (数数)(并查集)
传送门神仙数数题,抄的 xyx结论:钦定 KKK 的点,如果不带标号,那么可以覆盖全树,现在带标号,只需要考虑标号间置换的同构那么最后的答案可以表示成 n!∏Si!\frac{n!}{\prod S_i!}∏Si!n!, SiS_iSi 为极大等价类(考虑两个点能不能换,这个具有传递性)那么考虑将度数不为 2 的点作为关键点,一棵树将被划分成若干条关键点组成的路径 (a,...原创 2020-04-22 00:04:22 · 551 阅读 · 0 评论 -
【LOJ6609】无意识的石子堆(生成函数)(组合数学)
传送门题目比较神,但如果听了大神 ldxldxldx 讲了就可以很快做出来考虑列作为点,行作为一条边,那么最后的图就是若干个环及若干条链的图,点带标号边带标号考虑枚举链的个数 iii,那么点数 i+ni+ni+n,方案数 (mi+n)\binom{m}{i+n}(i+nm),给每个图分配边,方案数为n!∏(szi!)∏(szi−1)!\frac{n!}{\prod (sz_i!)\pr...原创 2020-04-21 23:42:21 · 296 阅读 · 0 评论 -
【省选模拟】Comet OJ - Contest #16 小 C 的奇妙序列(DP)(组合意义)(拆分数)
传送门先说一下 k=2k=2k=2怎么做,要求 E(ai2)=E(∑(ai+aj)2)=2∑E(ai2)+2(∑ai)2E(a_i^2)=E(\sum (a_i+a_j)^2)=2\sum E(a_i^2)+2(\sum a_i)^2E(ai2)=E(∑(ai+aj)2)=2∑E(ai2)+2(∑ai)2所以要维护 (∑ai)2(\sum a_i)^2(∑ai)2,(∑ai+t...原创 2020-03-15 08:55:19 · 206 阅读 · 0 评论 -
【SCOI2019】超矩形 (min25筛)(狄利克雷卷积)(数数)
T≤100,n≤1e6,∑k≤1e6T\le 100,n\le 1e6,\sum k\le 1e6T≤100,n≤1e6,∑k≤1e6简要题解:首先可以暴力 dpdpdp,fi,jf_{i,j}fi,j 表示到了第 iii 维,乘积为 jjj 的所有方案数的和fi,j=∑l∣jfi−1,l(jl)bif_{i,j}=\sum_{l|j}f_{i-1,l}(\frac{j}{l})^{b...原创 2020-03-01 12:20:08 · 691 阅读 · 2 评论 -
【省选模拟】这道题(数位DP)(容斥)(组合数学)
神仙题枚举每一个的下界容斥,对 2n2^n2n 种情况算方案数,令最后的数位 VVV,当前的下界加起来+1 为 SSS,那么贡献就是 (V−Sn−1)\binom{V-S}{n-1}(n−1V−S),所以 ways=∑V≥S(V−Sn−1)[v合法]=∑V≥0(Vn−1)[V+S合法]ways=\sum_{V\ge S}\binom{V-S}{n-1}[v合法]=\sum_{V\ge 0...原创 2020-02-18 00:18:07 · 329 阅读 · 0 评论 -
【省选模拟】矩阵求和(斯特林数)(组合数转下降幂)(ZKW线段树)
HereHereHere给你一个 n×mn×mn×m 的矩阵,行列从 1 开始标号,第 i 行 j 列的值是 (i−1)∗m+j(i−1)∗m+j(i−1)∗m+j现在要求你实现以下操作。交换两行。交换两列。求一个子矩阵的做 k 次前缀和之后的和,对 1e9+71e9+71e9+7取模k≤10,n,m,q≤1e5k\le 10,n,m,q\le 1e5k≤10,n,m,q≤1e5...原创 2020-02-06 00:18:55 · 352 阅读 · 0 评论 -
集训队作业2018: 青春猪头少年不会梦到兔女郎学姐(多限制容斥)(生成函数)(组合数学)
题意给定 nnn 种颜色的球,第 iii 种颜色的球数量为 aia_iai 个,一种排列的贡献可以如下计算:先把这个序列首尾相连,然后把所有相邻且颜色相同的段拿出来,贡献为他们的长度之积,求所有排列的贡献和,原排列不同,首尾相连后相同的排列不算同一种。模 998244353998244353998244353。先考虑一个序列怎么做我们对每一个 iii 枚举将 aia_iai 分成 bi...原创 2020-01-19 14:27:18 · 451 阅读 · 0 评论 -
「THUPC2018」好图计数 / Count (生成函数)(组合数学)
传送门首先有 “不连通图的补图一定联通”所以不连通的好图的补图一定是联通好图而若一个图是联通图且补图为联通图,那么根据定义这个图不是好图于是发现联通好图的个数 = 不连通好图个数设不连通好图或者是联通好图的个数为 gig_igi,好图个数为 fif_ifi,那么有 fi=2∗gif_i=2*g_ifi=2∗gi考虑 fif_ifi 的生成函数 F(x)F(x)F(x)一个...原创 2020-01-19 09:20:02 · 436 阅读 · 0 评论 -
SDOI2018 反回文串 (计数)(Pollard-Rho)(莫比乌斯反演)
传送门一直没敢动,但发现前几天做过一道类似的回文串计数,发现这道题也没有想象中的难考虑一个回文串能转出来几个不同的串显然是循环节大小这么多个,考虑让一个回文串的贡献为它的循环节的大小但发现这样子是算重了的,一个回文串有可能转出一个更它不同的回文串发现这种情况只会在串长为偶数的情况出现一次,于是我们让偶数串的贡献为 1/21/21/2 的循环节大小即可用一个函数 h(n)h(n)h(n)...原创 2019-12-19 21:28:05 · 228 阅读 · 0 评论 -
HNOI2011 卡农(组合数学)(DP)(容斥)
传送门我们先不考虑重排,最后除一个 m!m!m! 就可以了题意:值域在 [1,n][1,n][1,n] 间,选择 mmm 个不同的集合,使得每一个元素的出现次数为偶数n,m≤1e6n,m\le 1e6n,m≤1e6假设要选择 kkk 个集合,如果我们定下来 k−1k-1k−1 个,那么为了满足每一个元素都是偶数的限制,最后一个集合是确定的大力 dpdpdp,令 fif_ifi 表示选择...原创 2019-12-18 17:46:26 · 207 阅读 · 0 评论 -
【TC 12104】KingdomAndCities(组合数学)(分类讨论)
先膜拜 zxyoi题意:求 n≤50n\le 50n≤50 个点 m≤50m\le 50m≤50 条边前 k≤2k\le 2k≤2 个点的度数只能是 2 的带标号无向图个数首先考虑 k=0k=0k=0 的情况大力 dpdpdp 容斥转移f[n][m]=((n2)m)−∑i=1n−1(n−1i−1)∑j=1mf[i][j]∗((n−i2)m−j)f[n][m]=\binom{\binom{...原创 2019-12-11 18:58:26 · 210 阅读 · 0 评论 -
【FJWC2019】子图(容斥)(计数)(三元环 / 四元环计数)
题意:n≤1e5n\le 1e5n≤1e5 个点, m≤2e5m\le 2e5m≤2e5 条边,求包含 k≤4k\le 4k≤4 条边的联通块个数这里有图k=1k=1k=1,显然为 mmmk=2k=2k=2,枚举中间点组合数算即可k=3k=3k=3,有三种情况,一种是三元环,一种是链,一种是菊花图链:枚举中间边,算两边的贡献,但两边的出点重合会退化为三元环每个三元环会算三次,菊花图...原创 2019-12-11 18:38:54 · 582 阅读 · 0 评论 -
P4708 画画 (Burnside)(组合数学)
传送门考虑用 burnsideburnsideburnside 计数,枚举 n!n!n! 种置换,求出每种置换下的不动点个数先考虑该题的一种弱化版,就是无标号无向图个数我们要将点的置换作用到边上将置换画成很多个环,发现一条边要么在一个置换内,要么在不同的置换中在一个置换内和在不同置换中的不动点个数分别求在一个置换内的不动点个数是 n2\frac{n}{2}2n,考虑如果有边 (x,x...原创 2019-12-07 00:06:34 · 448 阅读 · 0 评论 -
【UNR #2】黎明前的巧克力 (组合数学)(生成函数)(FWT)
传送门题意:求出两个集合使他们异或值相同,问方案数考虑统计那些异或起来为 0 的集合,这样的集合的任何一个划分都是合法的一个大小为 ∣S∣|S|∣S∣ 的集合的贡献是 2∣S∣2^{|S|}2∣S∣我们考虑上生成函数然后 FWTFWTFWT得到 ∏(2∗xai+1)\prod(2*x^{a_i}+1)∏(2∗xai+1) 过后 ifwtifwtifwt 回去,第 000 项的值就是答案...原创 2019-12-06 18:46:53 · 213 阅读 · 0 评论 -
P4233 射命丸文的笔记(组合数学)(分治NTT)(多项式求逆)
传送门考虑先求两个东西:一个是所有竞赛图的哈密顿回路个数一个是存在哈密顿回路的竞赛图个数第一个,考虑一个哈密顿回路,有 (n−1)!(n-1)!(n−1)! 种走法,对每一种走法统计它出现多少次,其它边随便填,那么个数就是 (n−1)!∗2(n2)−n(n-1)!*2^{\binom{n}{2}-n}(n−1)!∗2(2n)−n第二个,发现如果存在哈密顿回路的话一定只有一个强连通...原创 2019-12-06 18:32:52 · 179 阅读 · 0 评论 -
「LibreOJ β Round #7」匹配字符串 (线性递推)(组合数学)(范围分块)(DP)
传送门首先有朴素的 dpdpdp,令 f[i]f[i]f[i] 为强制 i 选 0 的合法串的方案数,枚举最后一段 1 的起始位置f[i]=∑j=i−mi−1f[j]f[i]=\sum_{j=i-m}^{i-1}f[j]f[i]=∑j=i−mi−1f[j]发现可以线性递推,于是有了一个复杂度为 O(mlog(m)log(n))O(mlog(m)log(n))O(mlog(m)log(n))...原创 2019-12-04 20:28:22 · 187 阅读 · 0 评论 -
CF1010F Tree(链分治)(分治FFT)(DSU on tree)
CF1010F Tree首先这道题不是二叉树也可以做题目要求一个点的权值必须比所有儿子都大,于是可以转换为对每一个点分配一个 [0,x][0,x][0,x] 的权值,最终权值是子树的和这个的方案数只与集合大小有关为 (x+S−1S−1)\binom{x+S-1}{S-1}(S−1x+S−1)于是问题转换为统计树上大小为 kkk 的连通块个数已经可以 n2n^2n2 dpdpdp 了...原创 2019-12-02 23:06:41 · 558 阅读 · 0 评论 -
CSP-S 模拟 企鹅棋 (组合数学)(DP)
企鹅豆渣在玩企鹅棋,企鹅棋的规则如下:企鹅棋一共有 nnn 个格子,从左到右以1−n1−n1−n 编号。每一个格子会有一种属性SiS_iSi• B 属性格子,从这个格子出发,可以到达其他任意一个格子。• L 属性格子,从这个格子出发,只能跳到左边的格子。• R 属性格子,从这个格子出发,只能跳到右边的格子。棋子从第 sss 号格子出发,最终跳到第 eee 号格子,并且经过每一个格子恰好...原创 2019-11-14 17:06:54 · 356 阅读 · 0 评论 -
CSP-S 模拟 19/11/09 学园祭的乐队(组合数学)
∗∗**∗∗ 出题人出的模数是 998244853998244853998244853,调了一个小时说怎么 dfsdfsdfs 都要错,回过头了看题才发现果然细节决定成败转换一下题意,就是选一个全排列,然后到一个点就把 pip_ipi 的这个位置改成 000遇到的第一个 1 的位置就是答案考虑直接枚举最后的不合法的弦的出现位置 iii那么显然 iii 前面的任意一个为 1 的位置 j...原创 2019-11-09 16:36:15 · 257 阅读 · 0 评论 -
CSP-S 模拟 七十和十七 (期望DP)(找规律)
传送门瞪一下样例发现,每次排好序都是先把 n−1n-1n−1 位排好序,再排第 nnn 位如果我们令 fn−1f_{n-1}fn−1 表示到 n−1n-1n−1 的所有排列的计数次数,然后算出第 nnn 位的新增贡献就可以递推了手玩一下发现如果 an=na_n=nan=n 不需要归位,否则需要 2ai−12^{a_i-1}2ai−1 次然后就可以枚举最后一个填什么转移,发现是个等比数...原创 2019-11-07 11:40:19 · 143 阅读 · 0 评论 -
CSP-S 模拟 长寿花 (组合数学)(DP)
传送门NOINOINOI 模拟比 CSPCSPCSP 模拟简单干脆就都说成 CSPCSPCSP 模拟显然按层转移,并且颜色种类没有关系,只关心个数fi,jf_{i,j}fi,j 表示到第 iii 层,有 jjj 种颜色的方案数枚举填几种颜色,val(i,j)val(i,j)val(i,j) 表示 iii 个空格 jjj 个颜色的方案数即 j∗(j−1)i−1j*(j-1)^{i-1}j...原创 2019-11-07 11:32:24 · 197 阅读 · 0 评论 -
CSP-S 模拟 毛笔与圆珠笔 (状压DP)(搜索打表)(线性递推)(Berlekamp-Massey )
题意:给定一个4∗n4*n4∗n的矩阵,可以用任意面积为444的连通图形覆盖完美覆盖的方案个数,对998244353998244353998244353取模,n≤1e9n\le 1e9n≤1e9首先会想到状压 dpdpdp,因为最坏情况就是一个横着的长为 4 的插到前面这样的话需要压 3 列的状态然后容易想到先把状态的转移打表打出来然后你发现讨论所有 4 联通块已经让你头疼了,还要枚...原创 2019-11-07 11:16:33 · 265 阅读 · 0 评论 -
CometOJ contest#13「火鼠的皮衣 -不焦躁的内心-」(单位根反演)
给定 n,a,b,pn,a,b,pn,a,b,p,求∑i=0n2aibn−i∗2(n2∗i)\sum_{i=0}^{\frac{n}{2}}a^ib^{n-i*2}\binom{n}{2*i}i=0∑2naibn−i∗2(2∗in)指数不相同,丑陋∑i=0n2ai∗2bn−i∗2(n2∗i)\sum_{i=0}^{\frac{n}{2}}\sqrt a^{i*2}b^{n-i*2}\b...原创 2019-10-25 23:36:03 · 170 阅读 · 0 评论 -
NOI.AC CSP-S 模拟 Round 2 T1 Count (组合数学) (容斥)
传送门题意:给定两个整数 n,mn, mn,m 求 k 元组 (a1,a2,…,ak)(a1,a2,…,ak)(a1,a2,…,ak) 的个数,满足 a1,a2,…,aka1,a2,…,aka1,a2,…,ak 为正整数∑ai=n\sum a_i=n∑ai=n 且 a1,a2,…,aka1,a2,…,aka1,a2,…,ak 均不是 mmm的倍数n≤1e18,m≤5e3,k≤2e3n\l...原创 2019-10-20 16:24:47 · 260 阅读 · 0 评论 -
NOI2017 泳池 [DP] [线性递推]
传送门第一步转换:求恰好为 k 的转换成 ≤k\le k≤k 的减去 ≤k−1\le k-1≤k−1 的考虑 dpdpdp,令 fif_{i}fi 表示宽度为 iii 的答案枚举第一个断点到iii 的长度,fi=∑j=0i−1fi−j−1∗gj∗(1−p)f_i=\sum_{j=0}^{i-1}f_{i-j-1}*g_j*(1-p)fi=∑j=0i−1fi−j−1∗gj∗(1−p)...原创 2019-10-13 18:15:06 · 154 阅读 · 0 评论 -
[NOI2019] 机器人[DP] [拉格朗日插值]
传送门NOI2019NOI 2019NOI2019 的第5道,听说可以用下降幂维护,但是我用拉格朗日插值怼过去了考虑暴力的dpdpdp,fl,r,kf_{l,r,k}fl,r,k表示区间 [l,r][l,r][l,r] 的最大值为 kkk 的方案数枚举最高点位置,显然并没有东西可以挡住最高点,因此如果区间为奇数,p∈[mid−1,mid+1]p\in [mid-1,mid+1]p∈[mi...原创 2019-10-12 17:12:12 · 272 阅读 · 0 评论 -
近期刷题总结[ 19 04 21 ]
目录P2056 [ZJOI2007]捉迷藏[括号序列 + 线段树]P3857 [TJOI2008]彩灯[ 线性基 ]P4570 [BJWC2011]元素[ 贪心 + 线性基 ]P5304 [GXOI/GZOI2019]旅行者 [ dijsktra ]P5303 [GXOI/GZOI2019]逼死强迫症[ DP + 矩阵乘 ]P5300 [GXOI/GZOI20...原创 2019-04-21 14:30:04 · 251 阅读 · 0 评论 -
组合数(斯特林)(多项式)好题集锦
目录[SDOI2009]虔诚的墓主人WOJ4119 01矩阵WOJ4096膜法BJOI2015 糖果WOJ4163排列树P1350 车的放置[SHOI2015]超能粒子炮·改P4609 [FJOI2016]建筑师CF932E Team WorkP4091 [HEOI2016/TJOI2016]求和[HAOI2018]苹果树P4841 城市规划...原创 2019-07-03 13:52:11 · 624 阅读 · 0 评论 -
CF451E Devu and Flowers [组合数学 + 容斥原理]
传送门首先, 将原问题简化, 假设每种花都有无数多, 从 n 个种类中选出 S 个的方案数相当于一个长为S的序列, 将其分为n段, 所以答案为考虑用总的减去不合法的, 因为 n 很小, 所以我们可以枚举不合法的集合如果 i 不合法, 那么它至少选了 f[i] + 1 个, 剩下的可以随意乱选, 贡献就是所以对于当前枚举的集合 k , 贡献即为但是这保证了集合之外的就...原创 2019-07-09 23:20:21 · 209 阅读 · 0 评论 -
CF938E Max History [组合数学]
传送门考虑一个数怎样才能有贡献即没有>它的在它的前面,即它前面的全部<=它我们记小于一个数的个数为 m,首先比它大的 n-m-1 个数, 在它后面,可以随意全排列一下, 就是然后把这剩下的 m 个数插进去,有 n 个空位,所以是, 在乘上本身的全排列于是算出这个数的贡献就是#include<bits/stdc++.h>#define N...原创 2019-07-16 23:38:09 · 234 阅读 · 0 评论 -
[NOI2019]斗主地 [拉格朗日插值, 找规律, 组合数学]
传送门首先有暴力的30分做法, 设 f[i][j] 为还是i, j 个的概率然后 v[i] 为当前的数列然后你会毒瘤地发现,type = 1 时它是个等差的,type = 2时是一个二阶等差的也就是说,我们只需要维护前3项,然后暴力插出后面的就可以了每次分成A 和 n - A 两堆的时候,我们需要插出 A+1,A+2, A+3的值,然后类似上面的 v 解决当前的前3项...原创 2019-07-19 16:59:53 · 792 阅读 · 1 评论 -
HackerRank costly graphs [二类斯特林]
传送门因为每个点是独立的,我们可以枚举每个点的度数考虑用斯特林数化简 i ^ m#include<bits/stdc++.h>#define N 500050using namespace std;typedef long long ll;#define poly vector<ll>#define C 18const int Mod...原创 2019-08-08 23:44:34 · 204 阅读 · 0 评论 -
[BZOJ4305] 数列的GCD [容斥/莫比乌斯反演+组合数学]
传送门考虑答案为 gcd 的倍数的情况就要好做很多设 cnt 为 d 的倍数的个数考虑容斥,发现#include<bits/stdc++.h>#define N 300050using namespace std;typedef long long ll;const int Mod = 1000000007;ll add(ll a, ll b){ ...原创 2019-08-09 21:24:18 · 193 阅读 · 0 评论 -
[HDU4625] JZPTREE [二类斯特林] [树形DP]
传送门考虑到由于太弱打不出下降幂,下降幂部分请自己联想感谢 csdn 没有让我打出下降幂,原来推了好久的下降幂式子结果就是个组合恒等式然后直接 DP 维护下降幂,从儿子走一遍,从父亲走一遍从父亲走的要减去从儿子走上去再走下来的, 最后在用斯特林还原就可以了#include<cstdio>#include<cstring>#define ...原创 2019-08-09 21:58:16 · 259 阅读 · 0 评论 -
BZOJ4402 Claris的剑 [组合数学]
BZOJ4402 Claris的剑注意到" 我们认为两把剑本质不同,当且仅当存在至少一个宽度,在两把剑的宽度序列里面出现次数不一样 "冷静分析后发现,我们可以根据字典序最小来构造序列或者从另一方面想:将某些剑重新排列后,跟以下两种本质相同1.1(2,1)(2,1)(2,1)...2(3,2)...3(4,3)...m1(2,1)(2,1)(2,1)...2(3,2)...3(4,3).....原创 2019-10-01 23:53:09 · 242 阅读 · 0 评论 -
暑假集训 ---- 斯特林数
TCO14 CountTables用 fmf_mfm 表示 m 列的答案,先强制行不相等,再减去列相等的情况fm=n!∗(cmn)−∑i=1m−1fi∗Sm,if_m=n!*\binom{c^m}{n}-\sum_{i=1}^{m-1}f_i*S_{m,i}fm=n!∗(ncm)−∑i=1m−1fi∗Sm,i题解:[HDU4625] JZPTREE 一道比较妙的斯特林转下降...原创 2019-10-06 11:17:30 · 175 阅读 · 0 评论 -
近期刷题总结[ 19 04 07 ]
目录P2523 [HAOI2011]Problem c[ DP + 组合数学 ][CQOI2014]数三角形[ 组合数学 ]P2606 [ZJOI2010]排列计数[ DP + 组合数学 ]P2962 [USACO09NOV]灯Lights[ 高斯消元 + dfs ]JSOI2012 始祖鸟[高斯消元]P2474 [SCOI2008]天平[差分约束]P328...原创 2019-04-07 16:44:41 · 234 阅读 · 0 评论