首页 > 其他分享 >组合问题之错排问题

组合问题之错排问题

时间:2024-09-24 12:48:13浏览次数:9  
标签:选择 组合 int 问题 钥匙 此时 错排

错排问题

n把钥匙,n把锁,随机分配,全部配错的方案数怎么算?

钥匙a,除了锁a以外有 ( n − 1 ) (n-1) (n−1) 种方案,假设选定锁b

钥匙b,此时面临两种选择 选择锁a不选择锁a

  • 选择锁a,a,b两者之间相互满足,此时剩下的是一个子问题,若原来的问题表示为 f ( n ) f(n) f(n) ,则子问题为 f ( n − 2 ) f(n-2) f(n−2)
  • 不选择锁a,此时我们可以采取一个思想实验,将钥匙b看成钥匙a,那么不选择锁a就是出自题意的考虑,而剩下的其它钥匙(除开原来的a, b)也和此时的新a钥匙一样,满足:
    • 属于一个大小为n-1的钥匙集合
    • 都有属于各自的锁
    • 不能选择自身的锁 ,构成另一个子问题 f ( n − 1 ) f(n-1) f(n−1)

由此得出公式: f ( n ) = ( n − 1 ) ⋅ ( f ( n − 1 ) + f ( n − 2 ) ) f(n) = (n-1) \cdot (f(n-1) + f(n-2)) f(n)=(n−1)⋅(f(n−1)+f(n−2))

void cal_d(int n)
{
    d[1] = 0, d[2] = 1;
    for (int i = 3; i <= n; i++)
    {
        d[i] = (i - 1) * (d[i - 1] + d[i - 2]);
    }
}


例题在这里插入图片描述

标签:选择,组合,int,问题,钥匙,此时,错排
From: https://blog.csdn.net/m0_73669127/article/details/142483111

相关文章

  • 非线性规划——无约束最优化问题精讲
    最优化问题的研究历史可以追溯到17世纪的变分法,随着数学、物理学、经济学和计算科学的不断发展,最优化问题逐渐成为一个独立的学科。对于无约束最优化问题的求解,从最早的最速下降法,到后来的牛顿法和共轭梯度法,再到现代的变尺度法和智能算法,发展历程反映了科学技术进步的轨迹。无约......
  • flink 大批量任务提交 yarn 失败问题
    问题现象用户迁移到新集群后,反馈他们开发平台大量flink任务提交失败了,当时集群的yarn资源是足够的排查过程用户是在他们的开发平台上提交的,查看他们失败的任务,发现是他们提交端主动Kill的,接着沟通发现他们提交平台有个逻辑就是提交到yarn的flink任务,如果在2......
  • MySQL线上问题排查
    线上问题排查一、线上故障排查的思路与方向在程序开发与运行过程中,出现Bug问题的几率无可避免,数据库出现问题一般会发生在下述几方面:①撰写的SQL语句执行出错,俗称为业务代码Bug。②开发环境执行一切正常,线上偶发SQL执行缓慢的情况。③线上部署MySQL的机器故障,如磁盘、内存、......
  • LeetCode 1014. 最佳观光组合
    题目简介:给你一个正整数数组 values,其中 values[i] 表示第 i 个观光景点的评分,并且两个景点 i 和 j 之间的 距离 为 j-i。一对景点(i<j)组成的观光组合的得分为 values[i]+values[j]+i-j ,也就是景点的评分之和 减去 它们两者之间的距离。返回一对观......
  • 使用Copilot AI解决openwrt 19.07 nas samba在Windows网络[网上邻居]中无法看到的问题
    1.问题缘由我的一台openwrt路由可以在Win11的网络中看到,另一台自己刷的openwrt19.07nas却在win11网络中看不到,但直接用IP可以访问其samba3.6共享的文件夹。为何这台不能被Windows发现呢?2.问题解决自己搜索了下,找不到解决方案,问了下Googlegemini,回答不能解决,有点答非所闻......
  • redisson内存泄漏问题排查
    问题描述最近生产有个服务突然出现频繁告警,接口P99响应时间变长,运维同学观察到相应的podcpu飙升,内存占用很高。cpu升高问题排查是老生常谈的话题了,一般可以使用top-ppid-H查看是哪个线程占用cpu高,再结合jstack找到对应的java线程代码。不过经验告诉我们,cpu升高还有另外一个......
  • XML 数据类型有问题
    我想将XML文件转换为CSV。但是,我不断收到错误AttributeError:'NoneType'objecthasnoattribute'integer'。xmlparse=Xet.parse('AppleMusicLibrary.xml')root=xmlparse.getroot()foriinroot:Track_ID=i.find("Tack......
  • Logback使用问题汇总
    如何在logback配置中使用application.yml中属性SpringBoot中logback.xml使用application.yml中属性示例模板:<?xmlversion="1.0"encoding="UTF-8"?><configuration><!--读取spring.application.name中的属性来生成日志文件名--><springPropertyscop......
  • 不是,哥们,谁教你这样处理生产问题的?
    你好呀,我是歪歪。最近遇到一个生产问题,我负责的一个服务触发了内存使用率预警,收到预警的时候我去看了内存使用率已经到了80%,看了一眼GC又发现还没有触发FullGC,一次都没有。基于这个现象,当时推测有两种可能,一种是内存溢出,一种是内存泄漏。好,假设现在是面试,面试官目前就给了......
  • 商城项目改进购物车防止下单的幂等性问题-----商城项目
    packagecom.alatus.mall.cart.web;importcom.alatus.mall.cart.service.CartService;importcom.alatus.mall.cart.vo.CartItem;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.stereotype.Controller;importorg.spring......