随笔分类 - 数学——排列组合
摘要:"题目链接" problem 给出一个括号序列,要求删除一些括号使得剩下的括号序列是个匹配的括号序列,且改括号序列左边全部为左括号,右边全部为右括号。 solution 考虑枚举左右括号交界的位置$x$,为了避免重复计算,强制要求$x$左边的第一个左括号必选。然后枚举$x$的时候只枚举左括号的位置。
阅读全文
摘要:错排问题 简单来说,错排问题就是问有多少个长度为$n$的排列$p$,使得对于所有的$i\in [1,n]$都有$i \neq p_i$。 递推式 错排的一个递推式就是$f(n)=(n-1)(f(n-1)+f(n-2))$ 这个递推式复杂度显然是线性的。 关于这个递推式的推导请自行百度。这里不再赘述。
阅读全文
摘要:题目链接 思路 这个题可以考虑用全部情况减去不合法的情况,来求解。首先需要知道n个点所组成的图总共有$C(_n^2)$种,然后用f[n]表示n个点的图联通的方案数。 然后钦定1在联通图里面,考虑不合法的情况。让j个点联通,其他点可以任意连边,这样就可以保证这张图是不连通的。 所以f数组的转移就是 $
阅读全文
摘要:luogu3197 思路 看了很久没思路,看了题解发现自己好zz。用全部的情况减去不合法的情况就行了。全部的情况就是每个人随便选,总共有$m^n$种情况,然后考虑不合法的情况,也就是任意相邻的两个人不能信仰同一宗教,第一个人有m个宗教可以选,后面的每个人因为都不能和前面那个人相同,所以后面的每个人有
阅读全文
摘要:luogu1665 思路 一道第二类斯特兰数的模板题。只不过需要写个高精。 f[i][j]表示前i个球放到j个盒子里的方案数。第i个球可以单独一个盒子,所以f[i][j]+=f[i 1][j 1]。还可以与前面的放到同一个盒子里,所以f[i][j]+=f[i 1][j] j 代码
阅读全文
摘要:基础 $C(^n_m)$表示从n个东西中选m个的方案数 $C(^n_m)=\frac{n!}{m!(n-m)!}$ 多项式系数 $(a+b)^n=\sum\limits_{i=0}^n{(^n_i)a^ib^{n-i}}$ 一些知识 $\sum\limits_{i=0}^n(^n_i)=2^n$其实
阅读全文
摘要:"题目链接" 题解: 对于上面和下面的式子进行分解质因数,然后看看上面的质因数个数减去下面的质因数个数能不能达到k的质因数的要求即可。 分解质因数的时候用对于阶乘分解质因数的常用方法:比如要求1999!中能分解出多少个5,那么就把1999不断的除以5,并且把得到的数相加即可。原因显然。 但是上面方法
阅读全文