• 关于排列数和组合数的一些性质


    排列数

    \(n\) 个不同元素种取出 \(m(m\le n)\) 个元素的所有不同排列的个数,叫做从 \(n\) 个不同元素种取出 \(m\) 个元素的排列数,用符号 \(A_n^m\) 表示。

    排列数的一些性质

    1. \[A_n^m=\frac{n!}{(n-m)!} \]

    2. \[nA_{n-1}^{m-1}=\frac{(n-1)!\cdot n}{(n-1-m+1)!}\\=\frac{n!}{(n-m)!}\\=A_n^m \]

    3. \[mA_{n-1}^{m-1}+A_{n-1}^m=\frac{m(n-1)!}{(n-m)!}+\frac{(n-1)!}{(n-m-1)!}\\=\frac{m(n-1)!+(n-m)(n-1)!}{(n-m)!}\\=\frac{n!}{(n-m)!}\\=A_n^m \]

    组合数

    \(n\) 个不同元素种取出 \(m(m\le n)\) 个元素的所有不同组合的个数,叫做从 \(n\) 个不同元素种取出 \(m\) 个元素的组合数,用符号\(C^m_n\) 表示。

    组合数的一些性质

    1. \[C_n^m=\frac{n!}{(n-m)!m!} \]

    2. \[C_n^m=C_{n-1}^m+C_{n-1}^{m-1}\ \ \texttt{可以用动态规划的思想理解} \]

    3. \[C_n^m=C_m^{n-m} \]

    4. \[\sum_{i=0}^mC_{n+i}^i=C_m^0+C_{m+1}^1+C_{m+2}^2+...+C_{m+r}^r\\=C_m^1+C_{m+1}^1+C_{m+2}^2+...+C_{m+r}^r\\=C_{m+2}^1+C_{m+2}^2+...+C_{m+r}^r\\=C_{m+r+1}^r \]

    5. \[\texttt{设} S_{n}^m=\sum_{i=0}^mC_n^i,\texttt{则}\\S_n^{m+1}=S_n^m+C_n^{m+1}\\S_{n+1}^m=C_{n + 1}^0 + C_{n + 1}^1 + C_{n + 1}^ 2 + \cdots + C_{n + 1}^m\\=C_{n}^0 + (C_n^0 + C_n^1) + (C_n^1 + C_n^2) + \cdots + (C_n^{m-1} + C_n^m)\\=2S_n^m-C_n^m\\ \texttt{所以如果我们要求多个组合数的前缀和,我们可以类似于莫队的双指针的方式求} \]

    6. \[(x+y)^n=\sum_{i=0}^n C_n^ix^iy^{n-i} \]

    7. \[\sum_{i=0}^nC_n^i x^i=\sum_{i=0}^n1^{n-i}C_n^i x^i=(1+x)^n \]

    8. \[\sum_{i=0}^n C_{n}^i=\sum_{i=0}^n 1^i\times 1^{n-i}C_{n}^i=(1+1)^n=2^n \]

    9. \[\sum_{i=0}^n (-1)^iC_n^i=\sum_{i=0}^n 1^{n-i}(-1)^iC_n^i=(1+(-1))^n=0 \]

    10. \[C_{m+n}^n=\sum_{i=0}^{n}C_n^iC_m^i \]

    11. \[C_n^m=\frac n m C_{m-1}^{n-1} \]

    12. \[\sum_{i=1}^n C_n^i\cdot i=\sum_{i=1}^n \frac{n!}{(i-1)!(n-i)!}\\=n\sum_{i=1}^n \frac{(n-1)!}{(i-1)!(n-i)!}\\=n\sum_{i=0}^{n-1} C_{n-1}^i\\=n2^{n-1} \]

    13. \[\sum_{i=1}^nC_n^ii^2=n\sum_{i=0}^{n-1} C_{n-1}^i(i+1)\\=n(\sum_{i=0}^{n-1} C_{n-1}^ii+\sum_{i=0}^{n-1}C_{n-1}^i)\\=n((n-1)2^{n-2}+2^{n-1})=n(n+1)2^{n-2} \]

    14. \[\sum_{i=0}^n(C_n^i)^2=\sum_{i=0}^nC_n^iC_{n}^{n-i}=C_{2n}^n \]

    15. \[f(n)=\sum_{i=0}^n (-1)^iC_n^ig(i)\Leftrightarrow g(n)=\sum_{i=0}^n (-1)^iC_n^if(i) \]

    16. \[f(n)=\sum_{i=0}^nC_n^ig(i)\Leftrightarrow g(n)=\sum_{i=0}^n(-1)^{n-i}f(i) \]

    17. \[f(n)=\sum_{i=n}^mC_i^ng(i)\Leftrightarrow g(n)=\sum_{i=n}^m(-1)^{i-n}C_i^nf(i) \]

  • 相关阅读:
    leetcode53. Maximum Subarray(动态规划)
    MinGW中没有gdb.exe解决办法
    POJ
    POJ 3614 (贪心)
    bzoj 1057 (悬线法求最大子矩阵)
    bzoj1 218 激光炸弹(二位前缀和)
    POJ 2299(归并求逆序对)
    HDU 1394(归并求逆序对)
    POJ1523 Targin求关节点
    HDU6299 贪心
  • 原文地址:https://www.cnblogs.com/wangjunrui/p/15845906.html
Copyright © 2020-2023  润新知