错排公式
来源:互联网 发布:自学编程入门教程 编辑:程序博客网 时间:2024/06/06 04:05
前言
错排公式,即把n本可区分书打乱使得每本书不在原本位置的方案数。
容斥原理得到的递推式
我在某题题解里讲过,现在复制过来。
设dp[i]表示i个元素的错排方案数。
什么意思呢?就是关于i的排列其中不存在任意的a[j]=j。
我们可以使用容斥原理:
例如dp[n],其实就是要满足n个条件——第i个条件为a[i]!=i
那么合法方案数=至少不满足0个条件-至少不满足1个条件+至少不满足2个条件-至少不满足3个条件+……
也就是
另一种递推式
如果i到了j,我们就让i向j连一条有向边。
合法的方案便是形成许多环且没有自环。
考虑dp[n],有两种可能。
在n-1的图上,n随便连一条有向边到一个结点,然后连向这个结点的结点改为连向n。相当于把n并进了这个环。n可以连向的结点有n-1种可能。
在n-2的图上,增加一个大小为2的环,除了n以外另一个点的编号未知,有n-1种可能。
于是错排公式有了另一种递推式
0 0
- 错排公式
- 错排公式
- 错排公式
- 错排公式
- 错排公式 HDOJ2049
- 错排公式
- 错排公式
- 错排公式
- 错排公式
- 错排公式
- 错排公式
- 错排公式
- HDU1465-错排公式
- 错排公式
- 错排公式
- 错排公式
- 错排公式
- 错排公式
- 【南理工oj】116 - 士兵杀敌(二)(线段数 & 树状数组)
- HBase数据模型解析和基本的表设计分析
- Java的子类和父类实例化顺序
- Codeforces 669D 模拟
- Redis的快照持久化-Redis学习笔记三
- 错排公式
- caffe_layer
- n皇后问题 HDOJ-2553
- I00002 打印九九乘法表
- Linux 大于2T 解决方法
- 第三章 表,栈和队列
- HDOJ1106
- CentOS 6.5环境使用ansible剧本自动化部署Corosync + pacemaker环境及corosync常用配置详解
- 面试总结