Sky Full of Stars 题目链接:http://codeforces.com/problemset/problem/997/C 数据范围:略. 题解: 首先考虑拟对象,如果至少有一行完全相等即可. 这个的答案就需要多步容斥:$\sum\limits_{i = 1} ^ n (-1)^{i + 1}\cdot 3 ^ i\cdot 3 ^ {n \cdot (n - i)}$. 那么至少有一列的答案跟这个一样. 把他俩加一起就是答案么?我们需要减去什么? 显然,需要减掉至少有一行且至少…
方法一 设\(f_i\)为最多使用\(i\)种颜色的涂色方案,\(g_i\)为恰好只使用\(i\)种颜色的涂色方案.可知此题答案为\(g_k\). 根据排列组合的知识不难得到\(f_k = \sum_{i=0}^k{C_k^i*g_i}\). 根据二项式反演的式子 or 容斥原理,有\(g_k = \sum_{i = 0}^k{(-1)^{k-i}*C_k^i*f_i}\),这时只要有\(f_i\)我们就可以累加得到最终答案,看题面考虑\(f_i\)的现实意义,根有\(i\)种可选,往下涂每个点…
小w的喜糖 题目链接:https://lydsy.com/JudgeOnline/problem.php?id=4665 数据范围:略. 题解: 二项式反演裸题. $f_{i,j}$表示,前$i$种钦定$j$拿到自己种类糖果的方案数. 求完了之后可以二项式反演回来即可. 代码: #include <bits/stdc++.h> using namespace std; typedef long long ll; const int mod = 1000000009 ; int n, m; ll…
//待更qwq 反演原理 二项式反演 若 \[g_i=\sum_{j=1}^i {\binom ij} f_j\] , 则有 \[ f_i=\sum_{j=1}^i (-1)^{i-j} {i \choose j} g_j \] 同时, 若 \[g_i=\sum_{j=1}^i (-1)^j {i \choose j} f_j\] , 则有 \[f_i=\sum_{j=1}^i (-1)^j {i \choose j} g_j\] 通过反演原理和组合数的性质不难证明. 0/1? todo Sti…
http://codeforces.com/contest/111/problem/D Little Petya loves counting. He wants to count the number of ways to paint a rectangular checkered board of size n × m (n rows, m columns) in k colors. Besides, the coloring should have the following proper…
CF997C Sky Full of Stars 计数好题 在Ta的博客查看 容斥式子:发现只要每个钦定方案的贡献都考虑到再配上容斥系数就是对的 O(n^2)->O(n) 把麻烦的i=0,j=0特殊考虑下 剩下的,先把麻烦的东西化简干净 然后枚举一维i,剩下的二项式定理!!!! #include<bits/stdc++.h> #define reg register int #define il inline #define fi first #define se second #def…
P4859 已经没有什么好害怕的了 啥是二项式反演(转) 如果你看不太懂二项式反演(比如我) 那么只需要记住:对于某两个$g(i),f(i)$ ---------------------------- 如果:$f(n)=\sum_{i=0}^{n}C(n,i)g(i)$ 那么:$g(n)=\sum_{i=0}^{n}(-1)^{n-i}\ C(n,i)f(i)$ ---------------------------- 如果:$f(k)=\sum_{i=k}^{n}C(i,k)g(i)$ 那么:…
[LOJ#6374]网格(二项式反演,容斥) 题面 LOJ 要从\((0,0)\)走到\((T_x,T_y)\),每次走的都是一个向量\((x,y)\),要求\(0\le x\le M_x,0\le y\le M_y\),并且不能不走.同时有\(k\)个限制,表示不能同时\(x=y=k_i\),保证所有\(k_i\)都是\(G\)的倍数.求恰好跳了\(R\)步到达的方案数. 题解 如果不存在不能走的点的限制,那么两维可以分开考虑.比如接下来只考虑\(x\)上的问题. 因为存在步长的限制,所以设\…
传送门 其实标签只是搞笑的. 没那么难. 二项式反演只是杀鸡用牛刀而已. 这道题也只是让你n≤20n\le20n≤20的错排数而已. 还记得那个O(n)O(n)O(n)的递推式吗? 没错那个方法比我今天用的要快一些. 言归正传. 回忆一下二项式反演的式子: fn=∑i=0n(ni)gif_n=\sum_{i=0}^n\binom{n}{i}g_ifn​=∑i=0n​(in​)gi​ =>gn=∑i=0n((−1)i(nn−i)fi)g_n=\sum_{i=0}^n((-1)^i\binom{n}…
题目链接: 洛谷 BZOJ 题目大意:有两个长为 $n$ 的序列 $a,b$,问有多少种重排 $b$ 的方式,使得满足 $a_i>b_i$ 的 $i$ 的个数比满足 $a_i<b_i$ 的 $i$ 的个数恰好多 $k$ 个.答案对 $10^9+9$ 取模. $1\le n\le 2000,0\le k\le n$.保证 $a,b$ 中没有相同的数. 首先根据小学数学知识可知,$a_i>b_i$ 的个数应该是 $\frac{n+k}{2}$.如果 $n+k$ 不是偶数那么就无解. 那么就可…
链接:vjudge 题目大意:有一排方格共 $n$ 个,现在有 $m$ 种颜色,要给这些方格染色,要求相邻两个格子的颜色不能相同.现在问恰好用了 $k$ 种颜色的合法方案数.答案对 $10^9+7$ 取模.$T$ 组数据. $1\le T\le 300,1\le n,m\le 10^9,1\le k\le 10^6,k\le \min(n,m)$.大多数数据中 $k$ 很小.(smg啊……) 经典的二项式反演例题. 我们令 $f(x)$ 为一共有 $x$ 种颜色,恰好用了 $x$ 种颜色的方案数…
终于讲到反演定理了,反演定理这种东西记一下公式就好了,反正我是证明不出来的~(-o ̄▽ ̄)-o 首先,著名的反演公式 我先简单的写一下o( ̄ヘ ̄*o) 比如下面这个公式 f(n) = g(1) + g(2) + g(3) + ... + g(n) 如果你知道g(x),蓝后你就可以知道f(n)了 如果我知道f(x),我想求g(n)怎么办 这个时候,就有反演定理了 反演定理可以轻松的把上面的公式变为 g(n) = f(1) + f(2) + f(3) + ... + f(n) 当然,我写的只是个形式…
题目:http://codeforces.com/gym/101933/problem/K 其实每个点的颜色只要和父亲不一样即可: 所以至多 i 种颜色就是 \( i * (i-1)^{n-1} \),设为 \( f(i) \),设恰好 i 种颜色为 \( g(i) \) 那么 \( f(i) = \sum\limits_{j=0}^{i} C_{i}^{j} * g(j) \) 二项式反演得到 \( g(i) = \sum\limits_{j=0}^{k} (-1)^{k-j} * C_{k}…
题目链接 BZOJ3622 题解 既已开题 那就已经没有什么好害怕的了 由题目中奇怪的条件我们可以特判掉\(n - k\)为奇数时答案为\(0\) 否则我们要求的就是糖果大于药片恰好有\(\frac{n - k}{2} + k\)个的方案数,我们记为\(K\) 思路1 直接求恰好不好求,想到二项式反演: 如果有 \[b_k = \sum\limits_{i = k}^{n} {i \choose k} a_i\] 那么有 \[a_k = \sum\limits_{i = k}^{n} (-1)^…
[题解]CF997C Sky Full of Stars 为什么我的容斥原理入门题是这道题????????? \(Part-1\)正向考虑 直接考虑不合法合法的方案吧 所以我们设行有\(i\),列有\(j\)有是不同的颜色 所以分这几种情况讨论: \[ i\not=0,j\not=0 \\ i=j=0 \\ ij=0,i+j\not=0 \] 考虑到\(i=j=0​\)对答案没有贡献,所以我们考虑第一式和第三式吧 第三式简单一点,情况就是这样的: 方案数还是比较显然的(我说显然是因为是可以通过我…
题意:小球排成一排,从m种颜色中选取k种颜色给n个球上色,要求相邻的球的颜色不同,求可行的方案数,答案模1e9+7.T组数据,1<= n, m <= 1e9, 1 <= k <= 1e6, k <= n, m 分析: a(k)表示用不超过k种颜色染n个位置,两两相邻颜色不相同的总数,很简单a(k)=k(n-1)^(k-1) b(k)表示恰好用k种颜色 很显然a(k)=ΣC(k,i)b(i),我们知道a,想知道b,这里就用到二项式反演 那么b(k)=ΣC(k,i)*i*(-1)…
Description “简单无向图”是指无重边.无自环的无向图(不一定连通). 一个带标号的图的价值定义为每个点度数的k次方的和. 给定n和k,请计算所有n个点的带标号的简单无向图的价值之和. 因为答案很大,请对998244353取模输出.$n \le 10^9,k \le 200000$ 化学学考时含义推式子+手动打表找规律得到了一个$O(nlogn)$的式子开心的很我以为我要AC了回来看数据范围就升天了. 问NC大神这题用到了什么:斯特林数/伯努利数.然后就自闭了学了一天的知识点还去做了点…
传送门 为了方便我们设\(N\)是\(N,M,L\)中的最小值,某一个位置\((x,y,z)\)所控制的位置为集合\(\{(a,b,c) \mid a = x \text{或} b = y \text{或} c = z\}\) 发现恰好\(k\)个位置不大好算,考虑容斥计算强制\(k\)个位置是极大值的概率 对于极大值所在位置的数\(a_1,a_2,...,a_k\),假设\(a_1 > a_2 > ... > a_k\),那么我们还需要满足\(a_1 \geq a_1\)所在位置控制的…
传送门 题目大意:给出一个长度为\(n\)的序列\(a_i\),序列中每一个数可以取\(1\)到\(D\)中的所有数.问共有多少个序列满足:设\(p_i\)表示第\(i\)个数在序列中出现的次数,\(\sum\limits_{i=1}^D \lfloor \frac{p_i}{2} \rfloor \geq m\).\(D \leq 10^5 , 0 \leq m \leq n \leq 10^9\) 在有生之年切掉laofu的多项式题,全场唯一一个写多项式求逆的,其他人都直接卷积,然后发现自己…
题目链接:洛谷 pb大佬说这是sb题感觉好像有点过fan...(我还是太弱了) 首先,设$i$这个数在序列中出现$a_i$次,要求$\sum_{i=1}^D[a_i \ mod \ 2]\leq n-2m$ 如果要直接计算$\leq n-2m$的数量会非常麻烦,所以考虑设$g_i$表示恰好出现$i$个奇数的方案之和. 这样也还是太麻烦,我们考虑使用反演或容斥通过$\geq i$的数量推算出恰好等于$i$的数量,假设$f_i$表示出现$i$个奇数的方案数. 因为这是数的排列问题,所以考虑使用指数型…
[CTS2019]珍珠 考虑实际上,统计多少种染色方案,使得出现次数为奇数的颜色数<=n-2*m 其实看起来很像生成函数了 n很大?感觉生成函数会比较整齐,考虑生成函数能否把n放到数值的位置,而不是维度 有标号,EGF,发现奇偶性有关,其实就是e^x+-e^(-x)这种.(确实很整齐) 所以可以带着e^x化简 如果枚举奇数颜色数,再用两个EGF卷积搞来搞去,很麻烦 memset0 还要转化为路径?(可能上下阶乘很多吧...),这谁想得到 上面的方法之所以麻烦,是因为二项式展开之后存在三个sigm…
世界是物质的,物质是运动的,运动是有规律的,规律是可以被认识的 二项式反演 \[ g_n=\sum_{i=0}^n \binom{n}if_i\Rightarrow f_n=\sum_{i=0}^n(-1)^{n-i}\binom{n}ig_i \] 证明如下 \[ \begin{aligned} \sum_{i=0}^n(-1)^{n-i}\binom{n}ig_i &=\sum_{i=0}^n(-1)^{n-i}\binom{n}i\sum_{j=0}^i\binom{i}jf_i\\ &am…
分析 感觉这道题的计数方法好厉害.. 一个直观的思路是,把题目转化为求至少有\(k\)个极大的数的概率. 考虑这样一个事实,如果钦定\((1,1,1),(2,2,2),...,(k,k,k)\)是那\(k\)个极大值的位置,并且\(val(1,1,1) < val(2,2,2) < ... < val(k,k,k)\).我们考虑依次确定这些值,显然\(val(1,1,1)\)的值是和它至少有一维相同的\(n \times m \times l - (n-1) \times (m-1) \…
题目传送门 https://loj.ac/problem/3119 现在 BZOJ 的管理员已经不干活了吗,CTS(C)2019 和 NOI2019 的题目到现在还没与传上去. 果然还是 LOJ 好. 题目 恰好有 \(k\) 个极大数不太好求,我们还是转化成二项式反演. 然后就变成了给定一个点的集合 \(S\),求钦定 \(S\) 中的点是极大点的方案数.可以发现 \(S\) 中的点因为必须要保证没有一维的坐标相同,所以到底是哪些点是不重要的,有用的只有 \(|S|\).所以问题转化为钦定了…
题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=3622 题解 首先显然如果 \(n - k\) 为奇数那么就是无解.否则的话,"糖果"比"药片"大的组数,应该为 \(\frac {n+k}2\). 考虑到多恰好 \(k\) 组不太好求,但是如果选了 \(k\) 组必须是"糖果"比"药片"大,这个方案数还是很好求的. 首先是选了 \(k\) 组必须是"糖果&quo…
题目传送门 https://lydsy.com/JudgeOnline/problem.php?id=2839 题解 二项式反演板子题. 类似于一般的容斥,我们发现恰好 \(k\) 个不怎么好求,但是至少 \(k\) 个还是很好求的. 考虑固定 \(k\) 个数必须存在,然后剩下的 \(n-k\) 个数的集合的子集中随意选择(不能不选),所以至少 \(k\) 个的方案就是 \(\binom nk (2^{2^{n-k}}-1)\). 令 \(f(k)\) 表示钦定了至少 \(k\) 个的方案,\…
[传送门[(http://www.51nod.com/Challenge/Problem.html#!#problemId=1518) 解题思路 直接算不好算,考虑容斥,但并不能把行和列一起加进去容斥,这会使时间复杂度非常高,那么就考虑枚举行后\(dp\).设\(f[i]\)表示存在\(i\)列有线,任意一行无线的方案数,\(g[i[\)表示至少有\(i\)列有线,任意一行无线的方案数,那么 \[g[i]=\sum\limits_{k=i}^n C(i,k)f[i]\] 二项式反演得 \[f[0…
传送门 解题思路 首先将\(a\),\(b\)排序,然后可以算出\(t(i)\),表示\(a(i)\)比多少个\(b(i)\)大,根据容斥套路,设\(f(k)\)表示恰好有\(k\)个\(a(i)\)比\(b(i)\)大,\(g(k)\)表示至少有\(k\)个,那么\(g(k)=\sum\limits_{i=k}^n\dbinom{i}{k}f(i)\).发现这是一个二项式反演的形式,现在的问题变为如何求\(g(k)\),发现可以强制选\(k\)组,其余的任意搭配,强制选\(k\)组就可以\(d…
传送门 解题思路 设\(f(k)\)为交集元素个数为\(k\)的方案数.发现我们并不能直接求出\(f(k)\),就考虑容斥之类的东西,容斥首先要扩大限制,再设\(g(k)\)表示至少有\(k\)个交集的方案数.\(g(k)\)是特别好算的,可以强制\(k\)个元素必选,其余的任意,那么有 \[ g(k)=\sum\limits_{i=k}^n\dbinom{n}{i}(2^{2^{n-i}}-1) \] 用\(g\)来表示\(f\)可得 \[ g(k)=\sum\limits_{i=k}^n\d…
传送门 解题思路 首先给出的树形态没用,因为除根结点外每个点只有一个父亲,它只需要保证和父亲颜色不同即可.设\(f(k)\)表示至多染了\(k\)种颜色的方案,那么\(f(k)=(k-1)^{(n-1)}*k\),而我们要求的是恰好染\(k\)种颜色的方案数,设其为\(g(k)\),易得 \[ g(k)=\sum\limits_{i=1}^k\dbinom{k}{i}f(i) \] 发现这个可以二项式反演 \[ g(k)=\sum\limits_{i=1}^k(-1)^{k-i}\dbinom{…