ACSX: June, 2022
作者:互联网
《基础概率练习题》
\(P(A|B)\) 表示在已知 \(B\) 满足的条件下 \(A\) 的概率,则 \(P(A|B)=\dfrac{P(AB)}{P(B)}\)。
此题中,A 为一号 rk1,B 为一号 \(\ge k\)。
- \(P(B)={m-k+n-1\choose n-1}\) 除以不加任何限制的总方案数
- \(P(AB)\),考虑到每号人 rk1 的几率是相同的,考虑算 rk1 \(\ge k\) 的方案数,后面除以 \(n\) 就是每个人 \(\ge k\) 且 rk1 的方案数。
观察到 rk1 \(\ge k\) 等价于至少一人 \(\ge k\),这个可以用容斥来做。
记使 \(X\) 中每个人都 \(\ge k\) 的方案集为 \(S_X\),所求即为
\(|\bigcup_{|T|=i}S_T|\) 的求法是 \({m-ik+n-1\choose n-1}\)(显然)。
《基础树剖练习题》
《征服》
先观察到一个性质,就是假如对棋盘黑白间隔染色,则黑区白区是互不影响的独立问题。每名玩家每次可看做是从黑、白两个独立的子游戏中选一个采取行动,根据 SG 引理则棋盘的 SG 为黑区和白区的 SG 的 xor。那么你发现在黑区布一个子的影响是把黑区划分成了四个独立部分(子游戏),假如你把棋盘扭转45°,它就是分割成了四个子矩形了,又可以根据 SG 引理递推了;选择在那个核心城市就是取 mex 了。就可以做完,复杂度 \(O(n^3m^3)\)。(记得记忆化)
《刮痧》
这类组合计数题就是慢慢分析推导。问题抽象为往长为 \(m\) 的格子里填数。首先发现最终对答案有贡献的东西可以分成打死的和没打死怪物的两部分,分开来递推。没打死的那部分其实只跟可供选择的怪物个数和要填的格子数有关。
设 \(g[i][S]\) 表示填 \(i\) 个格子,填的数要 \(\in S\) 而且都没有死,这样的填的方案数。显然有 \(g[i][S]=\sum_{0\le k<a_{back}}{i\choose k}g[i-k][S-back]\)(back为lowbit(S))。最后答案乘上一个 g 的系数就可以了。
则 \(f[i][S]\) 表示填 \(i\) 个格子,打死所有 \(\in S\) 的怪物,只算打死的怪物的贡献(不算没打死的),这样的概率。那么用刷表法,\(i+1\) 填的时候有两种情况,
- 打死了 \(j\),那就产生了 \({i-sum[S]\choose a_j-1}/|\bar S|\) 的贡献(记 \(\bar S=\complement_U S\),\(sum[S]=\sum_{i\in S}a_i\))
- 没打死,那就产生了 \(1/|\bar S|\) 的贡献。
最终,答案为
标签:打死,rk1,格子,sum,June,ge,2022,SG,ACSX 来源: https://www.cnblogs.com/impyl/p/16439849.html