随笔分类 -  数学--容斥

摘要:"传送门" 解题思路 暴力容斥复杂度太高,无法接受,考虑用$dp$。设$f(i)$表示从左上角开始不经过前面的阻断点,只经过$i$的阻断点。那么可以考虑容斥,用经过$i$的总方案数减去前面的阻断点到它的方案数,那么转移方程$$f(i)=C(x_i+y_i 2,x_i) \sum\limits_{j= 阅读全文
posted @ 2019-02-20 09:24 Monster_Qi 阅读(175) 评论(0) 推荐(0)
摘要:"传送门" 解题思路 首先所有物品是一定要用完的,那么可以按照物品考虑,就是把每种物品分给$n$个人,每个人分得非负整数,可以用隔板法计算。设物品有$m$个,方案数为$C(n+m 1,n 1)$。但这样会有人一个也分不到的情况,就容斥一下。 代码 cpp include include includ 阅读全文
posted @ 2019-02-18 10:47 Monster_Qi 阅读(146) 评论(0) 推荐(0)
摘要:[传送门[(http://www.51nod.com/Challenge/Problem.html ! problemId=1518) 解题思路 直接算不好算,考虑容斥,但并不能把行和列一起加进去容斥,这会使时间复杂度非常高,那么就考虑枚举行后$dp$。设$f[i]$表示存在$i$列有线,任意一行无 阅读全文
posted @ 2019-02-18 09:36 Monster_Qi 阅读(369) 评论(0) 推荐(0)
摘要:题面 Description 我们讲一个悲伤的故事。 从前有一个贫穷的樵夫在河边砍柴。 这时候河里出现了一个水神,夺过了他的斧头,说: “这把斧头,是不是你的?” 樵夫一看:“是啊是啊!” 水神把斧头扔在一边,又拿起一个东西问: “这把斧头,是不是你的?” 樵夫看不清楚,但又怕真的是自己的斧头,只好 阅读全文
posted @ 2018-12-11 10:04 Monster_Qi 阅读(179) 评论(0) 推荐(0)
摘要:"传送门" 解题思路 首先题目要求的其实就是$\sum\limits_{i=1}^n \sum\limits_{j=1}^m [(gcd(i,j) 1) 2+1)]$,然后变形可得$ n m+2\sum\limits_{i=1}^n \sum\limits_{j=1}^m gcd(i,j)$。所以本 阅读全文
posted @ 2018-12-10 23:09 Monster_Qi 阅读(115) 评论(0) 推荐(0)
摘要:"传送门" 解题思路 首先题目中有两个限制,第一个是两个集合直接必须一一映射,第二个是重新标号后,$B$中两点有边$A$中也必须有。发现限制$2$比较容易满足,考虑化简限制$1$。令$f(S)$表示重标号后至多出现在$S$中的标号且满足条件$2$的方案数,令$g(S)$表示重标号后恰好出现在$S$中 阅读全文
posted @ 2018-12-03 11:33 Monster_Qi 阅读(392) 评论(0) 推荐(0)
摘要:容斥 容斥原理的一般化: 对于两个关于集合的函数$f(S)$和$g(S)$,若 $$ f(S)=\sum\limits_{T\subseteq S}g(T) $$ 那么有 $$ g(S)=\sum\limits_{T\subseteq S}( 1)^{\left |S\right | \left | 阅读全文
posted @ 2018-12-03 10:18 Monster_Qi 阅读(1796) 评论(1) 推荐(0)
摘要:"传送门" 解题思路 看到计数想容斥 $from$ $shadowice1984$大爷。首先求出原图的生成树个数比较容易,直接上矩阵树定理,但这样会多算一点东西,会把$n 2$个公司的多算进去,那我们就减掉$n 2$个公司的生成树个数,然后发现少算了$n 3$的生成树个数...以此类推。所以就容斥一 阅读全文
posted @ 2018-12-01 23:13 Monster_Qi 阅读(116) 评论(0) 推荐(0)