UVa11806 Cheerleaders(容斥原理)】的更多相关文章

11806 - Cheerleaders Time limit: 2.000 seconds C Cheerleaders In most professional sporting events, cheerleaders play a major role in entertaining the spectators. Their roles are substantial during breaks and prior to start of play. The world cup soc…
题目链接:https://www.luogu.org/problemnew/show/UVA11806 容斥原理+组合数 正着找合♂fa的不好找,那就用总方案数-不合♂fa的 #include <cstdio> #include <cstring> #include <iostream> #include <algorithm> using namespace std; const int maxn = 1000; const int mod = 1e6 +…
题意 一个n*m的区域内,放k个啦啦队员,第一行,最后一行,第一列,最后一列一定要放,一共有多少种方法. 思路 设A1表示第一行放,A2表示最后一行放,A3表示第一列放,A4表示最后一列放,则要求|A1∧A2∧A3∧A4| 由容斥原理可知|∪Ai| = Σ|Ai| - Σ|Ai∧Aj| + -- (+-)|Ai∧Aj∧--∧Ak|. 再由德摩根定律得:∧Ai = Cu(∪Cu(Ai)),所以|∧Ai| = S - |∪Cu(Ai)|.(Cu表示集合的非) 然后令A表示不放第一行,B表示不放最后一…
题意 PDF 分析 如果要求是某行某列没有石子很好算,就一个组合数. 然后要求某行某列有,就用容斥原理就行了. 时间复杂度\(O(k^2 + 16T)\) 代码 #include<iostream> #include<cstdio> #include<cstdlib> #include<cmath> #include<set> #include<map> #include<queue> #include<stack&…
题目链接:https://cn.vjudge.net/problem/UVA-11806 题意 在一个mn的矩形网格里放k个石子,问有多少方法. 每个格子只能放一个石头,每个石头都要放,且第一行.最后一行.第一列和最后一列都有石子. 思路 设A为第一行格子.B为最后一行.C为第一列.D为最后一列. 很明显发现ABCD这个集合包含了重复元素,那么按照容斥定理可解. 注意: 1000007 不是素数,不能递推算逆元,因为mod%i==0 不要用乘法递推式算C,要用加法 容斥的技巧,用cont计数总方…
题目链接 Solution 可以考虑到总方案即为 \(C_{nm}^k\) . 考虑到要求的是边缘都必须至少有 \(1\) ,所以考虑不合法的. 第一行和最后一行没有的方案即为 \(C_{(n-1)m}^k\) 第一列和最后一列没有的方案即为 \(C_{(m-1)n}^k\) 然后考虑将四边状态压起来,然后可以做容斥. 这四个状态只要有一位为 \(0\) ,那么就可以统计答案. 这时状态为0,就是都有算进去: 这时如果碰到 \(0001\),也就是第一行没有的状态,我们就减掉\(C_{(n-1)…
UVA.11806 Cheerleaders (组合数学 容斥原理 二进制枚举) 题意分析 给出n*m的矩形格子,给出k个点,每个格子里面可以放一个点.现在要求格子的最外围一圈的每行每列,至少要放一个点,并且放在角上的点,同时算那个角所在的行和所在的列.不允许剩下点,求总共的方案数量,结果对1000007取模. 数据范围2 ≤ M,N ≤ 20,K ≤ 500. 考虑到要求组合数目,首先就需要预处理500以内的组合数.正向求解可能有些困难,这样考虑: 不管三七二十一,先求解出所有情况的总和,即C…
11806 - Cheerleaders Time limit: 2.000 seconds In most professional sporting events, cheerleaders play a major role in entertaining the spectators. Their roles are substantial during breaks and prior to start of play. The world cup soccer is no excep…
In most professional sporting events, cheerleaders play a major role in entertaining the spectators. Theirroles are substantial during breaks and prior to start of play. The world cup soccer is no exception.Usually the cheerleaders form a group and p…
自己写的代码: #include <iostream> #include <stdio.h> #include <string.h> /* 题意:相当于在一个m*n的矩形网格里放k个相同的石子,问有多少种方法? 限制条件:每个格子最多放一个石子,所有石子都要用完,并且第一行.最后一行.第一列.最后一列都得有石子. 思路: 直接求的话会比较麻烦,反过来想: 设总方案数为S,A={第一行没有石子},B={最后一行没有石子},C={第一列没有石子},D={最后一列没有石子}…