随笔分类 - 数学方法 -- 容斥原理
摘要:【LOJ 575】【LNR 2】不等关系(容斥,动态规划,分治FFT) 题面 "LOJ" 题解 一个暴力,设表示考虑完了前个位置,其中最后一个数在前面所有数中排名是第大,那么转移的时候枚举一下当前数是第几大,并且满足不等式的限制就可以了,然后拿前缀和优化一下就可
阅读全文
摘要:【UOJ 390】【UNR 3】百鸽笼(动态规划,容斥) 题面 "UOJ" 题解 发现这就是题解里说的:“火山喷发概率问题”(大雾 考虑如果是暴力的话,你需要记录下当前每一个位置的鸽笼数量,因为概率会随着你空的鸽笼的数量而变化。 我们可以把这个问题转变为给一个长度为的序列填数的问题。 直接算似
阅读全文
摘要:【BZOJ4487】[JSOI2015]染色问题(容斥) 题面 "BZOJ" 题解 看起来是一个比较显然的题目? 首先枚举一下至少有多少种颜色没有被用到过,然后考虑用至多种颜色染色的方案数。 那么显然没有颜色的限制,只有行列的限制。 那么我们钦定行必须被染色,这样子每一行的染色方案之和列数和颜
阅读全文
摘要:【CF285E】Positions in Permutations(动态规划,容斥) 题面 "CF" "洛谷" 题解 首先发现恰好很不好算,所以转成至少,这样子只需要确定完一部分数之后剩下随意补。 然后套一个二项式反演进行容斥就可以得到答案了。 考虑怎么算至少个的贡献, 设$f[i][j][S
阅读全文
摘要:【CTS2019】随机立方体(容斥) 题面 "LOJ" "洛谷" 题解 做这道题目的时候不难想到容斥的方面。 那么我们考虑怎么计算至少有个极大值的方案数。 我们首先可以把个极大值的位置给确定出来,方案数是$\displaystyle {n\choose k}{m\choose k}{l\
阅读全文
摘要:【BZOJ5302】[HAOI2018]奇怪的背包(动态规划,容斥原理) 题面 "BZOJ" "洛谷" 题解 ~~为啥泥萌做法和我都不一样啊~~ 一个重量为的物品,可以放出所有的重量,而多个物品也只要就好了。 现在的问题转变成了有多少个集合,满足$S
阅读全文
摘要:【LOJ 2542】[PKUWC2018]随机游走(min max容斥,动态规划) 题面 "LOJ" 题解 很明显,要求的东西可以很容易的进行容斥,那么转为求集合的。 那么怎么求解每个集合的呢。 显然以起点为根节点,如果点集中一个点在另外一个点的子树内,显然不需
阅读全文
摘要:【Luogu4707】重返现世(min max容斥) 题面 "洛谷" 求全集的的期望 题解 容斥的证明不难,只需要把所有元素排序之后考虑组合数的贡献,容斥系数先设出来后也不难解出。 那么我们来考虑如何求解,设出容斥系数 $$kmax(S)
阅读全文
摘要:【UOJ 422】【集训队作业2018】小Z的礼物(min max容斥,轮廓线dp) 题面 "UOJ" 题解 ~~毒瘤xzy,怎么能搬这种题当做WC模拟题QwQ~~ 一开始开错题了,根本就不会做。 后来发现是每次任意覆盖相邻的两个,那么很明显就可以套容斥。 要求的就是$max(Al
阅读全文
摘要:【BZOJ4005】[JLOI2015] 骗我呢(容斥,组合计数) 题面 "BZOJ" "洛谷" 题解 "lalaxu" cpp include using namespace std; define MOD 1000000007 define MAX 3000300 void add(int &x
阅读全文
摘要:【LOJ 6072】苹果树(矩阵树定理,折半搜索,容斥) 题面 "LOJ" 题解 emmmm,这题似乎猫讲过一次。。。 显然先搜索一下对于每个有用的苹果数量,满足权值小于的方案数 ,那么只需要考虑它们构成生成树的方案数就好了。 显然有用的可以和所有的
阅读全文
摘要:【BZOJ3129】[SDOI2013]方程(容斥,拓展卢卡斯定理) 题面 "BZOJ" "洛谷" 题解 因为答案是正整数,所先给每个位置都放一个就行了,然后都要减一。 大于的限制和没有的区别不大,提前给他个就好了。 假如没有小于的限制的话,那么就是经典的隔板法直接算答案。 如果提前
阅读全文
摘要:【ARC102E】Stop. Otherwise...(容斥原理,动态规划) 题面 "AtCoder" 有个骰子,每个骰子有个面,上面有到。骰子都是一样的。 现在对于中的每一个数,要求出满足不存在任意两个骰子的点数和为的方案数。 题解 显然这个东西
阅读全文
摘要:【CF715E】Complete the Permutations(容斥,第一类斯特林数) 题面 "CF" "洛谷" 给定两个排列,但是其中有些位置未知,用表示。 现在让你补全两个排列,定义两个排列之间的距离为每次选择中两个元素交换,使其变成的最小次数。 求距离
阅读全文
摘要:【arc093f】Dark Horse(容斥原理,动态规划,状态压缩) 题面 "atcoder" 有 名选手,编号为 至 。现在这 名选手将进行 轮淘汰赛,决出胜者。若 $x include include using namespace std;
阅读全文
摘要:AtCoder Grand Contest 005 A STring 翻译 给定一个只包含的字符串,如果出现了连续的,就把他删去,然后所有位置前移。问最后剩下的串长。 题解 模拟栈,和维护括号一样的。 cpp include include using namespace std;
阅读全文