盒子与小球

news/2025/2/12 14:40:17/文章来源:https://www.cnblogs.com/kuaicreator/p/18711540

n个小球放入m个盒子问题

(1)球 相同 也可以 不同

(2)盒 相同 也可以 不同

(3)盒 为空 也可以 不空

合计\(2\times2\times2=8\)种模型。

1、球相同,盒不同,盒不空


相当于把n个相同小球分成m份,用插板法,在n个小球中间的n-1个空中,插入m-1个板子隔开。

答案为\(\large C_{n-1}^{m-1}\)

2、球相同,盒不同,盒能空


在第1类情况下继续分析,我们可以先假设m个盒子里都放好了1个球,所以说白了就是,现在有m+n个相同的球,要放入m个不同的箱子,没有空箱。也就是第1种情,最后在从每个盒子里拿走1个小球。

答案为\(\large C_{n+m-1}^{m-1}\)

3、球不同,盒相同,盒不空

题目链接:P2028 龙兄摘苹果

题目链接:P1655 小朋友的球


\(dp[n][m]\)表示n个不同小球放入m个相同盒子且盒不能为空的方案总数。

情况一:如果\(n<m\)\(dp[n][m]=0\)

情况二:如果\(n>=m\)则继续分析,由于小球不同故可以分步解决故考虑最后一个小球所放情况不同,共计两种情况。

(1)最后一个小球单独放入一个盒子,则前n-1个小球就放入m-1个盒子,方案总数为\(dp[n-1][m-1]\)

(2)最后一个小球与其他球放一起,因为球已经放入盒子,虽然盒子相同但球不同则选择放入的盒子也不同,故有m种放法。再考虑前n-1个小球放入m个盒子的方案 \(dp[n-1][m]\) ,方案总数为 \(m\times dp[n-1][m]\)

边界条件 \(dp[n][m]=1(m=1,n\ge1)\) 表示有球但只有1个盒子时,只有1种方案。

答案为 第二类斯特林数 :

\(dp[n][m] = \begin{cases}0 & m>n\\1 & m=1,n\ge 1 \\m\times dp[n-1][m]+dp[n-1][m-1] & m\le n \end{cases}\)

为方便计算后面的问题,设第3类问题答案为 \(s[n][m]\)

4、球不同,盒相同,盒能空


选出1,2,……,n-1个盒子为空,视做不同方案,这样就和第3类问题相同。

\(B[n][m]\)表示n个不同小球放入m个相同盒子且盒能为空的方案总数。

答案为贝尔数:

\(B[n][m]=s[n][1]+s[n][m]+……+s[n][m]=\sum\limits_{i=1}^m s[n][i]\)

5、球不同,盒不同,盒不空

题目链接:P1287 盒子与球

我们可以用捆绑法将一些小球捆绑成一个小球,这道题可以等价为从n个小球中选出n−m+1个小球合并成一个大球,合并后为m-1个小球和1个大球共m个球,然后求m个球一共有多少种排列。

答案:\(C^{n-m+1}_n\times A^m_m\)

6、球不同,盒不同,盒能空

从小球的角度考虑,n个小球都有m种选择,故答案为: \(m^n\)

7、球相同,盒相同,盒能空

题目链接:P2386 放苹果

\(dp[n][m]\)表示n个相同小球放入m个相同盒子且盒能为空的方案总数。

若n<m 则 dp[n][m]=dp[n][n],因为盒子相同故,问题可以拿走m-n个盒子。

由于球相同,故不能对球进行分步考虑,考虑盒子是否存在空盒子的情况。

(1)盒子不为空,则可以将m个盒子中都先放一个小球,问题就转换为了n-m个小球放入m个盒子中的方案数,dp[n][m]=dp[n-m][m]。

(2)盒子存在空,可以拿走一个盒子作为空盒子,问题就转换为了n个小球放入m-1个盒子的方案数,dp[n][m]=d[n][m-1]。

边界条件为n=0或者m=1时,没有球或者只有1个盒子时都只有1种方案。

\(dp[n][m] = \begin{cases}1 & m=1||n==0\\dp[n][n] & n<m \\dp[n-m][m]+dp[n][m-1] & m\le n \end{cases}\)

为方便后面使用设该方案数为 \(D[n][m]\)

8、球相同,盒相同,盒不空

题目链接:P1025 [NOIP2001 提高组] 数的划分

\(dp[n][m]\)表示n个相同小球放入m个相同盒子且盒不能为空的方案总数。

若 n<m 则 dp[n][m]=0 因为无法保证盒子不空

若 n>=m 可以将每个盒子中都放入一个小球,这样该问题就转换为第7类问题,允许为空的情况,\(dp[n][m]=D[n-m][m]\)

\(dp[n][m] = \begin{cases}0 & n<m\\D[n-m][m] & n\ge m \end{cases}\)

Ps: 扩展题目

题目链接:P5824 十二重计数法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/882569.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

土木与地质工程监测 振弦式测缝计 桥梁、隧道、边坡位移实时监控,定制化组网与无线传输支持

土木与地质工程监测 振弦式测缝计 桥梁、隧道、边坡位移实时监控,定制化组网与无线传输支持基于霍尔效应原理研发的高精度绝对角度传感器,采用创新性数字信号处理技术实现角度测量。核心系统集成高精度16位模数转换器,配合五阶数字滤波算法,有效保障测量数据稳定性。通过温…

vue3 + vite + element-plus + springboot打包上线所遇之坑

自我本经介绍:我自己是做Java开发的,对于前端其实并不熟悉,以下的前端技术都是为了做这个项目现学现卖的。 自己使用vue3 + vite + element-plus从头到尾打了个管理后台,在开发环境运行一切正常,于是准备打包发布到服务器上,就有了几天痛苦的解决问题的过程打包npm run b…

省选前想题记录

想题记录 wtcqwq 2.3~2.6 Todo List 除了省选计划题单、模拟赛补题和刷 AGC 以外。LGV 引理和线性代数; USACO Jan 的 G 和 P 组想一想学一学做一做。随记 2.4。只有刺痛自己的时候才能认知自我啊... 2.4。好冷。机房里已经空无一人了。真希望确实是 “高处不胜寒” 啊。 2.5。…

在KEIL中使用JLINK仿真HC32F448时不能识别芯片

1.HC32F448在MDK中使用JLINK仿真找到不芯片2.确定后手动选择芯片 如下图,选择Cortex-M4就可以了。

基于DeepSeek R1 满血版大模型的个人知识库,回答都源自对你专属文件的深度学习。

这是一座专属你的知识宝库,它依托 DeepSeek R1 满血版大模型构建而成。在这里,每一次回答都源自对你专属文件的深度学习,精准匹配你的知识需求,为你输出最贴合文件内容的答案 。 使用 Cherry Studio 结合硅基流动(SiliconCloud)来创建基于 DeepSeek R1 的个人知识库,按照…

十分钟满血deepseek R1 api部署

目前deepseek app访问速度较慢,经常出现访问超时的问题。而使用api部署的方式即可使用满血专属deepseek R1模型,pc端/手机端均可使用 简要流程:注册硅基流动账号,生成账号密钥下载chat bot,配置chat bot进行对话注册硅基流动账号 硅基流动网址如下: https://cloud.silico…

2024问题总结

20241225 XlVirtualList解决数据量大,滚动后,再点下拉会出现空白 setTimeout(() => {document.querySelector(.vxe-table--body).style.marginTop = 0})20241224双向数据绑定问题加key 是否已有这个元素 $set 慢半拍加$nextTick:key="isPlan?scope.row.dblamount:null…

WPF 中设置Trigger改变button背景色不起效的问题

通过触发器,改变button背景色的方法是在Templete中. 正确的方法是先创建Style,再在Style中修改Templete,在ControlTemplete中定义触发器: 精雕细琢,精益求精。

vxe-table 使用树结构点击筛选,子节点筛选

vxe-table 使用树结构点击筛选,子节点筛选,启用树结构后会同时对每个层级的子节点进行筛选 官网:https://vxetable.cn 效果<template><div><vxe-grid v-bind="gridOptions"></vxe-grid></div> </template><script setup&g…

P1496 火烧赤壁(离散化)

这是我的第一道离散化题,虽然只是一道普及-的题,但我理解起来还是有点吃力,看完视频后我我觉的离散化,就是将一堆数据用他们的相对大小表示 例如 1,99,100,1000,可以表示为1,2,3,4. 55 100 300 1,可以表示为 2 3 4 1;这道题目就是先把各个区间的两个端点存储到c数…

[办公自动化]deepseek解决不了的问题,“帮忙找到丢失的word文件”

这两天遇到两个同事,问的问题都差不多:能不能帮她找到丢失的word文档。 案例1: 背景: 这个同事描述的是这样的,正在写一份文档,结果发现没有保存,能不能帮忙找找。毕竟写了大半天的,很多词汇费劲脑子想出来的。 看了看,计算机上装的是office2013。windows 10计算机。 …

C#/.NET/.NET Core技术前沿周刊 | 第 25 期(2025年2.1-2.9)

前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录、追踪C#/.NET/.NET Core领域、生态的每周最新、最实用、最有价值的技术文章、社区动态、优质项目和学习资源等。让你时刻站在技术前沿,助力技术成长与视野拓宽。欢迎投稿、推荐或自荐优质文章、项目、学习资源等…