【题解】毒蛇越狱(FWT+容斥)】的更多相关文章

[题解]毒蛇越狱(FWT+容斥) 问了一下大家咋做也没听懂,按兵不动没去看题解,虽然已经晓得复杂度了....最后感觉也不难 用FWT_OR和FWT_AND做一半分别求出超集和和子集和,然后 枚举问号是01,裸的,\(O(2^{cnt[?]})\) 默认问号是1,利用子集和求,\(O(2^{cnt[1]})\) 默认问号是0,利用超集和求,\(O(2^{cnt[0]})\) 可以知道\(min(cnt)\le n/3\),所以复杂度\(O(n2^n 2^{n/3}Q)\) //@winlere #…
[题解]Counting D-sets(容斥+欧拉定理) 没时间写先咕咕咕. vjCodeChef - CNTDSETS 就是容斥,只是难了一二三四五\(\dots \inf\)点 题目大意: 给定你一个\(n\)维空间,问你这个空间内有多少个点集满足两点间最大的切比雪夫距离为\(d\).两个点集不同,当且仅当两个点集无法通过平移而想等. 转化1 考虑最后那个限制,平移想等的限制,受这道题的启发[题解]At2370 Piling Up,我们考虑钦定每一维的\(0\)点都有点坐落,这样就钦定了一个…
1008: [HNOI2008]越狱 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 12593  Solved: 5439[Submit][Status][Discuss] Description 监狱有连续编号为1...N的N个房间,每个房间关押一个犯人,有M种宗教,每个犯人可能信仰其中一种.如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱 Input 输入两个整数M,N.1<=M<=10^8,1<=N<=1…
状压妙啊... 本题的主体思路:状压+容斥原理(或状压+数位dp) 记g[i]表示按位与后结果所有位上至少有i个1的方案数 那么根据容斥原理,ans=g[0]-g[1]+g[2]-g[3]+g[4]... 于是如果我们求出了g,就可以求出ans 可是怎么求出g呢 我们记f[i]表示a&i==i这样的a的个数,那么如果i某一位上为1,则a这一位上也为1 于是我们可以枚举所有可能的结果(0-10^6),然后观察这个结果是否是某一个可能结果的子集,如果是的话就累计个数 详细说一下,就是我首先读入所有数…
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3556 How Many Sets I Time Limit: 2 Seconds      Memory Limit: 65536 KB Give a set S, |S| = n, then how many ordered set group (S1, S2, ..., Sk) satisfies S1 ∩ S2 ∩ ... ∩ Sk = ∅. (Si is…
题解: 普通的$min-max$容斥是用来求最后出现元素的期望之类的 $kth min-max$容斥进一步解决倒数第k个出现的元素的期望 给出公式: $kthmax(S)=\sum\limits_{T \in S} {} {(-1)}^{|T|-k}C_{|T|-1}^{k-1}min(T)$ 例题:重返现世…
[CF900D]Unusual Sequences 题意:定义正整数序列$a_1,a_2...a_n$是合法的,当且仅当$gcd(a_1,a_2...a_n)=x$且$a_1+a_2+...+a_n=y$.给定x,y,求合法的序列总数. x,y<=10^9. 题解:不难想到容斥,先不管gcd的限制,那么总方案数就是$2^{y-1}$.你可以理解为有y个1,除了第一个1,其余的要么加到上一个数中去,要么自己变成一个新数. 如果考虑gcd的限制呢?容斥一发即可.并且容斥系数就是我们常用的莫比乌斯函数…
[BZOJ2839]集合计数(容斥,动态规划) 题面 BZOJ 权限题 Description 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为K,求取法的方案数,答案模1000000007.(是质数喔~) Input 一行两个整数N,K Output 一行为答案. Sample Input 3 2 Sample Output 6 题解 比较简单的容斥吧.. 设\(f[i]\)表示至少有\(i\)个相同元素的方案数…
[BZOJ4596]黑暗前的幻想乡(矩阵树定理,容斥) 题面 BZOJ 有\(n\)个点,要求连出一棵生成树, 指定了一些边可以染成某种颜色,一共\(n-1\)种颜色, 求所有颜色都出现过的生成树方案数. 题解 一脸的容斥啊. 先矩阵树定理暴力算出所有符合条件的生成树,然后减去\(n-2\)中颜色的方案数, 再加上\(n-3\)种颜色的方案数...... 所以直接暴力枚举颜色的子集,每次矩阵树就好了. 时间复杂度大概是\(O(2^{n-1}n^3log)\)??? 虽然\(log\)小的不行,甚…
题目传送门 https://loj.ac/problem/2542 题解 肯定一眼 MinMax 容斥吧. 然后问题就转化为,给定一个集合 \(S\),问期望情况下多少步可以走到 \(S\) 中的点. 考虑 dp 的话,令 \(dp[x]\) 表示从 \(x\) 开始走的答案. 如果 \(x \in S\),那么 \(dp[x] = 0\): 否则,\(dp[x] = 1 + \frac{\sum\limits_{(x, y) \in T} dp[y]}{deg_x}\). 这个东西直接树上高斯…
HDU5213 Lucky 题意: 给出\(N\)个数和\(k\),有\(m\)次询问,每次询问区间\([L1,R1]\)和区间\([L2,R2]\)中分别取一个数能相加得到\(k\)的方案数 题解: 可以考虑容斥把两个区间的问题转化成四个单区间的问题,对于原问题给的区间\([L1,R1]\)和\([L2,R2]\),我们记\(f(L,R)\)为区间\([L,R]\)内能相加得到\(k\)的有多少组合,那么对于每次的询问,可以简化为:\(f(L1,R1)+f(R1+1,L2-1)-f(L1,L2…
题目描述 给你\(n,k\),要你选一些互不相同的正整数,满足这些数的\(lcm\)为\(n\),且这些数的和为\(k\)的倍数. 求选择的方案数.对\(232792561\)取模. \(n\leq {10}^{18},k\leq 20\),\(n\)的全部质因子都\(\leq 100\) 题解 解法一 一个\(\leq {10}^{18}\)的数最多有\(15\)不同的质因子. 记\(w=15,m=2^w=32768\) 先看看这个模数有什么特点. \(p=232792561=lcm(1,2,…
题目大意 给你一个无向图,有\(m\)个询问,每次给你一个点\(x\)和一个点集\(S\),问你从\(x\)开始走,每次从一个点随机的走到与这个点相邻的点,问你访问\(S\)中每个点至少一次的期望步数是多少. \(n\leq 18,m\leq 100000\) 题解 有个东西叫min-max容斥: \[ \max(S)=\sum_{T\subseteq S,T\neq \varnothing}{(-1)}^{|T|+1}\min(T) \] 这道题中,\(\min(S)\)是从点\(x\)开始走…
[BZOJ4036]按位或(Min-Max容斥,FWT) 题面 BZOJ 洛谷 题解 很明显直接套用\(min-max\)容斥. 设\(E(max\{S\})\)表示\(S\)中最晚出现元素出现时间的期望,\(min\)同理. 那么\(E(max\{S\})=\sum_{T\subseteq S}(-1)^{|T|}E(min\{T\})\) 考虑怎么求\(E(min\{T\})\),很容易发现只需要或上了任何一位就行了. 也就是 \[E(min\{T\})=\frac{1}{\sum_{G\c…
题目链接 BZOJ4036 题解 好套路的题啊,,, 我们要求的,实际上是一个集合\(n\)个\(1\)中最晚出现的\(1\)的期望时间 显然\(minmax\)容斥 \[E(max\{S\}) = \sum\limits_{T \subseteq S} (-1)^{|T| + 1}E(min\{T\})\] 那么问题就转化为了求每个集合中最早出现的\(1\)的期望时间 假如在\(k\)时刻出现,那么前\(k - 1\)时刻一定都是取的补集的子集,记\(T\)补集的所有子集概率和为\(P\) \…
Description: 刚开始你有一个数字0,每一秒钟你会随机选择一个$[0,2^n)$的数字,与你手上的数字进行或(C++, C 的 |, Pascal 的 or)操作. 选择数字i的概率是$p_i$ (保证$p \le p_i \le 1$,$\sum p_i =1$ )问期望多少秒后,你手上的数字变成$2^n-1$.($n \le 20$) 日常:想->问NC大聚聚这题有什么新知识点->学知识点->做->调... 全是新知识点,难度也都不低.一个知识点一道题也不知道自己是不…
「PKUWC2018」随机游走(min-max容斥+FWT) 以后题目都换成这种「」形式啦,我觉得好看. 做过重返现世的应该看到就想到 \(min-max\) 容斥了吧. 没错,我是先学扩展形式再学特殊形式的. \[E(\text{max}(S))=\sum_{T\subseteq S}(-1)^{|T|+1}E(\text{min}(T))\] 问题转化之后,然后我们可以枚举所有状态然后 \(O(n)\) 树形 \(dp\) \(-1\) 那项可以 \(O(2^n)\) 推出来,接下来就是子集…
题目链接:洛谷 题目大意:给定正整数 $n$.一开始有一个数字 $0$,然后每一秒,都有 $p_i$ 的概率获得 $i$ 这个数 $(0\le i< 2^n)$.一秒恰好会获得一个数.每获得一个数,就要将我们有的数与获得的数进行按位或.问期望经过多少秒后,我们的数变成 $2^n-1$. $1\le n\le 20,\sum p_i=1$. %%%stO shadowice1984 Orz%%% 首先定义 $\min(S)$ 表示 $S$ 中第一个变为 $1$ 的元素的时间.(其中 $S$ 是一个…
全网唯一一篇容斥题解 Description Solution 看到这个题,大部分人想的是状压dp 但是我是个蒟蒻没想到,就用容斥切掉了. 并且复杂度比一般状压低, (其实这个容斥的算法,提出来源于ywy_c_asm) (然而我知道了这个算法,竟然和他写的不一样,而且比他跑的快) 进入正题: 我们需要统计恰好满足匹配k个的情况. 那么,我们可以先找出来,恰好满足n个,n-1,n-2...k个的情况. 分别记为ans[i] ans[i]怎么算呢? 先给出公式: ans[i]=cal(i)-∑C(j…
[题解]CF559C C. Gerald and Giant Chess(容斥+格路问题) 55336399 Practice: Winlere 559C - 22 GNU C++11 Accepted 186 ms 1608 KB 2019-06-09 17:03:21 2019-06-09 17:03:21 一道小水题(为什么2400??我为什么之前被一道2200锤QAQ) 有个很显然的公式,在组合数学那本书上面也有. 从坐标\((0,0)\)到坐标\((x,y)\)总共有\({x+y}\c…
其实也不是FWT--我也不知道刷FWT专题问什么会刷出来这个东西 这是min-max容斥讲解:https://www.zybuluo.com/ysner/note/1248287 总之就是设min(s),max(s)分别表示集合s里最早和最晚出现的元素,显然E(amx(全集))就是答案 然后有这样的式子: \[ E(max(s))=\sum_{s'\in s}E(min(s'))*(-1)^{|s'|+1} \] \[ E(min(s))=\frac{1}{\sum_{s'\cap s!=\ph…
[CQOI2014]数三角形 题解(数论+容斥) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1328780 链接题目地址:洛谷P3166 BZOJ 3505 思想还是很巧妙的...(对于我这种菜鸡) 理解题意 首先它说\(n×m\)的网格,实际上是有\((n+1)×(m+1)\)个点来放三角形的顶点 然后就是算三角形的个数 怎么做 PS:以下所讲的所有\(n\)都是\(n+1\),\(m\)也是 可以用\(\dbinom{n×m}{3}\)算出网格中…
[题解][HAOI2018]染色(NTT+容斥/二项式反演) 可以直接写出式子: \[ f(x)={m \choose x}n!{(\dfrac 1 {(Sx)!})}^x(m-x)^{n-Sx}\dfrac 1 {(n-Sx)!} \] \(f(x)\) 钦定有\(x\)种颜色出现了恰好\(S\)的方案 然后推一下恰好有\(x\)种颜色出现了恰好\(S\)次的方案\(g(x)\) .推导在下下面. 最后的答案是\(\sum w_i g(i)\) 推导: 显然颜色种类不会超过\(L=\lfloo…
P3349 [ZJOI2016]小星星 声明:本博客所有题解都参照了网络资料或其他博客,仅为博主想加深理解而写,如有疑问欢迎与博主讨论✧。٩(ˊᗜˋ)و✧*。 题目描述 小 \(Y\) 是一个心灵手巧的女孩子,她喜欢手工制作一些小饰品.她有 \(n\) 颗小星星,用 \(m\) 条彩色的细线串了起来,每条细线连着两颗小星星. 有一天她发现,她的饰品被破坏了,很多细线都被拆掉了.这个饰品只剩下了 \(n-1\) 条细线,但通过这些细线,这颗小星星还是被串在一起,也就是这些小星星通过这些细线形成了树…
正题 题目链接:https://www.luogu.com.cn/problem/P3175 题目大意 开始有一个\(n\)位二进制数\(s=0\),每次有\(p_i\)概率选取数字\(i\)让\(s\)或上这个数字\(i\),求期望多少次能够让\(s\)的\(n\)个位都变为\(1\). 解题思路 因为是或所以我们只关心最后一个选中的数,设第\(i\)位选中的期望次数为\(E(i)\)的话答案就是\(max\{E(i)\}\). 又是期望又是\(max\)所以可以直接上\(\text{min-…
题意1:问你一个串有几个不连续子序列(相同字母不同位置视为两个) 题意2:问你一个串有几种不连续子序列(相同字母不同位置视为一个,空串视为一个子序列) 思路1:由容斥可知当两个边界字母相同时 dp[i][j] = dp[i + 1][j] + dp[i][j - 1] - dp[i + 1][j - 1] + dp[i + 1][j - 1] + 1;当两个字母不同时 dp[i][j] = dp[i + 1][j] + dp[i][j - 1] - dp[i + 1][j - 1].然后区间DP…
题意:给n,m,求出 思路:题意为求出1~m所有数和n的gcd之和.显然gcd为n的因数.我们都知道gcd(a,b)= c,那么gcd(a/c,b/c)= 1.也就是说我们枚举n所有的因数k,然后去找1~m/k中和n/k互质的个数就是gcd为k的个数.这个直接容斥就行. 代码: #include<iostream> #include<algorithm> #include<cstdio> #include<stdio.h> #include<strin…
Description Yehan is a angry grumpy rabbit, who likes jumping into the hole. This day,Yehan jumps again in the pit at home. Each time, he should jump from the hole at the coordinate (1,1) to (n,m), and he has to jump as the way : he can only jump (x,…
题意:有一块(1,1)到(m,n)的地,从(0,0)看能看到几块(如果两块地到看的地方三点一线,后面的地都看不到). 思路:一开始是想不到容斥...后来发现被遮住的地都有一个特点,若(a,b)有gcd(a,b)!= 1,那么就会被遮住.因为斜率k一样,后面的点会被遮住,如果有gcd,那么除一下就会变成gcd = 1的那个点的斜率了.所以问题转化为求gcd不为1有几个点,固定一个点,然后容斥. #include<set> #include<map> #include<queue…
思路:二进制解决容斥问题,就和昨天做的差不多.但是这里题目给的因子不是质因子,所以我们求多个因子相乘时要算最小公倍数.题目所给的因数为非负数,故可能有0,如果因子为0就要删除. 代码: #include<set> #include<map> #include<cmath> #include<queue> #include<cstdio> #include<cstring> #include<iostream> #inclu…