随笔分类 -  数学方法 -- 容斥原理

摘要:【LOJ 575】【LNR 2】不等关系(容斥,动态规划,分治FFT) 题面 "LOJ" 题解 一个暴力dp,设f[i][j]表示考虑完了前i个位置,其中最后一个数在前面所有数中排名是第j大,那么转移的时候枚举一下当前数是第几大,并且满足不等式的限制就可以了,然后拿前缀和优化一下就可 阅读全文
posted @ 2019-07-08 09:12 小蒟蒻yyb 阅读(791) 评论(0) 推荐(1) 编辑
摘要:【UOJ 390】【UNR 3】百鸽笼(动态规划,容斥) 题面 "UOJ" 题解 发现这就是题解里说的:“火山喷发概率问题”(大雾 考虑如果是暴力的话,你需要记录下当前每一个位置的鸽笼数量,因为概率会随着你空的鸽笼的数量而变化。 我们可以把这个问题转变为给一个长度为N的序列填数的问题。 直接算似 阅读全文
posted @ 2019-07-04 20:22 小蒟蒻yyb 阅读(941) 评论(0) 推荐(4) 编辑
摘要:【BZOJ4487】[JSOI2015]染色问题(容斥) 题面 "BZOJ" 题解 看起来是一个比较显然的题目? 首先枚举一下至少有多少种颜色没有被用到过,然后考虑用至多k种颜色染色的方案数。 那么显然没有颜色的限制,只有行列的限制。 那么我们钦定行必须被染色,这样子每一行的染色方案之和列数和颜 阅读全文
posted @ 2019-05-26 20:24 小蒟蒻yyb 阅读(510) 评论(0) 推荐(0) 编辑
摘要:【CF285E】Positions in Permutations(动态规划,容斥) 题面 "CF" "洛谷" 题解 首先发现恰好很不好算,所以转成至少,这样子只需要确定完一部分数之后剩下随意补。 然后套一个二项式反演进行容斥就可以得到答案了。 考虑怎么算至少m个的贡献, 设$f[i][j][S 阅读全文
posted @ 2019-05-26 15:46 小蒟蒻yyb 阅读(456) 评论(0) 推荐(0) 编辑
摘要:【51nod1355】斐波那契的最小公倍数(min max容斥) 题面 "51nod" 题解 显然直接算还是没法算的,所以继续考虑minmax容斥计算。 lcm(S)=TSgcd(T)(1)|T|+1 而斐波那契数列满足$gcd(f(a), 阅读全文
posted @ 2019-05-25 20:28 小蒟蒻yyb 阅读(591) 评论(0) 推荐(0) 编辑
摘要:【BZOJ4833】最小公倍佩尔数(min max容斥) 题面 "BZOJ" 题解 首先考虑怎么求f(n),考虑递推这个东西 (1+2)(e(n1)+f(n1)2)=e(n)+f(n)2 拆开之后可以得到:$e(n)=e(n 1)+2f(n 1),f( 阅读全文
posted @ 2019-05-25 19:43 小蒟蒻yyb 阅读(827) 评论(0) 推荐(1) 编辑
摘要:【CTS2019】随机立方体(容斥) 题面 "LOJ" "洛谷" 题解 做这道题目的时候不难想到容斥的方面。 那么我们考虑怎么计算至少有k个极大值的方案数。 我们首先可以把k个极大值的位置给确定出来,方案数是$\displaystyle {n\choose k}{m\choose k}{l\ 阅读全文
posted @ 2019-05-21 17:11 小蒟蒻yyb 阅读(893) 评论(0) 推荐(1) 编辑
摘要:【BZOJ5302】[HAOI2018]奇怪的背包(动态规划,容斥原理) 题面 "BZOJ" "洛谷" 题解 ~~为啥泥萌做法和我都不一样啊~~ 一个重量为Vi的物品,可以放出所有gcd(Vi,P)的重量,而多个物品也只要gcd就好了。 现在的问题转变成了有多少个集合S,满足$S 阅读全文
posted @ 2019-02-21 09:41 小蒟蒻yyb 阅读(399) 评论(0) 推荐(0) 编辑
摘要:【LOJ 2542】[PKUWC2018]随机游走(min max容斥,动态规划) 题面 "LOJ" 题解 很明显,要求的东西可以很容易的进行minmax容斥,那么转为求集合的min。 那么怎么求解每个集合的min呢。 显然以起点为根节点,如果点集中一个点在另外一个点的子树内,显然不需 阅读全文
posted @ 2019-01-06 21:16 小蒟蒻yyb 阅读(425) 评论(0) 推荐(0) 编辑
摘要:【Luogu4707】重返现世(min max容斥) 题面 "洛谷" 求全集的kmax的期望 题解 minmax容斥的证明不难,只需要把所有元素排序之后考虑组合数的贡献,容斥系数先设出来后也不难解出。 那么我们来考虑如何求解kmax,设出容斥系数f(|T|) $$kmax(S) 阅读全文
posted @ 2019-01-05 09:07 小蒟蒻yyb 阅读(413) 评论(1) 推荐(0) 编辑
摘要:【UOJ 422】【集训队作业2018】小Z的礼物(min max容斥,轮廓线dp) 题面 "UOJ" 题解 ~~毒瘤xzy,怎么能搬这种题当做WC模拟题QwQ~~ 一开始开错题了,根本就不会做。 后来发现是每次任意覆盖相邻的两个,那么很明显就可以套minmax容斥。 要求的就是$max(Al 阅读全文
posted @ 2019-01-03 19:33 小蒟蒻yyb 阅读(1097) 评论(5) 推荐(1) 编辑
摘要:【BZOJ4005】[JLOI2015] 骗我呢(容斥,组合计数) 题面 "BZOJ" "洛谷" 题解 "lalaxu" cpp include using namespace std; define MOD 1000000007 define MAX 3000300 void add(int &x 阅读全文
posted @ 2019-01-03 17:16 小蒟蒻yyb 阅读(460) 评论(0) 推荐(0) 编辑
摘要:【LOJ 6072】苹果树(矩阵树定理,折半搜索,容斥) 题面 "LOJ" 题解 emmmm,这题似乎猫讲过一次。。。 显然先meetinthemiddle搜索一下对于每个有用的苹果数量,满足权值小于lim的方案数 ,那么只需要考虑它们构成生成树的方案数就好了。 显然有用的可以和所有的 阅读全文
posted @ 2019-01-02 21:16 小蒟蒻yyb 阅读(677) 评论(0) 推荐(0) 编辑
摘要:【BZOJ3129】[SDOI2013]方程(容斥,拓展卢卡斯定理) 题面 "BZOJ" "洛谷" 题解 因为答案是正整数,所先给每个位置都放一个就行了,然后A都要减一。 大于的限制和没有的区别不大,提前给他Ai个就好了。 假如没有小于的限制的话,那么就是经典的隔板法直接算答案。 如果提前 阅读全文
posted @ 2018-12-26 11:09 小蒟蒻yyb 阅读(310) 评论(0) 推荐(0) 编辑
摘要:【ARC102E】Stop. Otherwise...(容斥原理,动态规划) 题面 "AtCoder" 有n个骰子,每个骰子有K个面,上面有1K。骰子都是一样的。 现在对于[2,2k]中的每一个数x,要求出满足不存在任意两个骰子的点数和为x的方案数。 题解 显然这个东西 阅读全文
posted @ 2018-12-25 19:55 小蒟蒻yyb 阅读(545) 评论(6) 推荐(0) 编辑
摘要:【CF715E】Complete the Permutations(容斥,第一类斯特林数) 题面 "CF" "洛谷" 给定两个排列p,q,但是其中有些位置未知,用0表示。 现在让你补全两个排列,定义两个排列p,q之间的距离为每次选择p中两个元素交换,使其变成q的最小次数。 求距离 阅读全文
posted @ 2018-12-20 15:28 小蒟蒻yyb 阅读(1655) 评论(0) 推荐(0) 编辑
摘要:【LOJ 6374】网格(二项式反演,容斥) 题面 "LOJ" 要从(0,0)走到(Tx,Ty),每次走的都是一个向量(x,y),要求0xMx,0yMy,并且不能不走。同时有k个限制,表示不能同时x=y=ki,保证所有ki都是$ 阅读全文
posted @ 2018-12-19 15:33 小蒟蒻yyb 阅读(630) 评论(4) 推荐(1) 编辑
摘要:【arc093f】Dark Horse(容斥原理,动态规划,状态压缩) 题面 "atcoder" 有 2n 名选手,编号为 12n 。现在这 2n 名选手将进行 n 轮淘汰赛,决出胜者。若 $x include include using namespace std; 阅读全文
posted @ 2018-09-26 15:55 小蒟蒻yyb 阅读(1045) 评论(0) 推荐(0) 编辑
摘要:AtCoder Grand Contest 005 A STring 翻译 给定一个只包含ST的字符串,如果出现了连续的ST,就把他删去,然后所有位置前移。问最后剩下的串长。 题解 模拟栈,和维护括号一样的。 cpp include include using namespace std; 阅读全文
posted @ 2018-09-19 17:06 小蒟蒻yyb 阅读(543) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示