#Snow{ position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 99999; background: rgba(255,255,240,0.1); pointer-events: none; }

错排公式的递推公式

错排

递推理解

思路概述

假设 Di 表示一个规模为 n 的方案数,则可以试着将这个问题的规模缩小,即可以先从 n 个值中选择一个值放在一个位置,比如说放在 k(k<n) 位置,则此时方案数为 n1,现在再来考虑剩下的 n1 个值,再选择一个值放,可以将问题分成不重合的两类,而且包含所有的情况。其一是将这个值放在第 n 个位置,这种情况下除了第一个放的值之外剩下的 n1 个值的方案数就是 1Dn2 ;其二,这个值不放在第 n 个位置,而放在其他不为 k 的位置,这时候剩下的这 n1 个值的方案数就是 Dn1

所以乘法原理都乘起来就是 Dn=(n1)Dn1)Dn2

这也就是错排的递推式了。

容斥原理理解

思路概述

假设现在你将 1n 的全排列放上去,考虑哪些排列是错误的,首先第 k 个位置放 k 的方案数是 (n1!) 种,这一个数的选取方案是 n 个数种选一个的方案数,即 Cn1,乘起来也就是 n(n1)!,这样会多减去两个数都不错排的数量,再加上,也就是 Cn2,剩下的 n2 个数随便排,即算出来总方案数就是 n!/2!,后边同理,最后累加起来得到 k=2n((1)kn!/k!)

posted @   Eternal-QX  阅读(91)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示