Josephus Problem 约瑟夫问题

Open Topic 总结

注:本文所有数字都从 00 开始

约瑟夫问题

nn 个人 (编号为 0,1,...,n10, 1, ..., n-1) 围成一个圈子, 从 00 号开始依次报数, 每数到第 mm 个人, 这个人就得自杀, 之后从下个人开始继续报数, 直到所有人都死亡为止. 问最后一个死的人的编号.

组合数学

  1. 抽屉原理(鸽笼原理)
  2. 容斥原理
  3. 加法原理
  4. 乘法原理
  5. 排列 A(n,m)=n!(nm)!A(n,m)=\frac{n!}{(n-m)!}
  6. 组合 C(n,m)=n!m!×(nm)!C(n,m)=\frac{n!}{m!\times (n-m)!}
    公式:
    C(n,m)=C(n,nm)C(n,m)=C(n,n-m)
    C(n,m)=C(n1,m)+C(n1,m1)C(n,m)=C(n-1,m)+ C(n-1,m-1)
  7. 可重复组合 方程x1+x2+…+xn=r的非负整数解的个数:
    可以理解为,将r个1排成一排,插入n-1个分隔符,把r个1分成n段,n段中的1的个数即是方程的一个解。
    插入n-1个分隔符的过程,实际上就是从n+r-1个位置中选择n-1个位置放分隔符,其余r个位置放1,
    共有C(n+r1,n1)=C(n+r1,r)C(n+r-1,n-1)=C(n+r-1,r)
  8. Catalan数 C(2n,n)n+1\frac{C(2n,n)}{n+1}
  9. CnmC_n^m中每个元素出现的次数为Cnm×m÷n=C(n1,m1)C_n^m \times m \div n=C(n-1,m-1)