排列组合(盒子放球)

(1)把4个相同的球放到3个相同颜色的盒子中去,问有多少种方法?
(2)把4个相同的球放到3个不同颜色的盒子中去,问有多少种方法?
(3)把4个不同的球放到3个相同颜色的盒子中去,问有多少种方法?
(4)把4个不同的球放到3个不同颜色的盒子中去,问有多少种方法?

【解】
(1)4种,分别是4,0,0|3,1,0|2,2,0|2,1,1。
(2)15种

【思路1】

【思路2】

公式C(n+r-1,r),n~盒子数,r~球个数

(3)14种

(4)81种

时间: 2024-10-12 02:53:44

排列组合(盒子放球)的相关文章

盒子放球

盒子放球问题 第一类: 将k个球放入n个不同的盒子中,每个盒子放球数>=0,求方法数 假设n个盒子分别放x1,x2,x3...xn,则x1+x2+x3+...+xn=k,令yi=xi+1(1<=i<=n),则yi>=1且y1+y2+...+yn=n+k,相当于求yi这个方程的解组数,可以看成插板问题,往n+k个物品中插入n-1个板,所以答案是C(n+k-1,n-1)=C(n+k-1,k) /* *输入说明:k个相同的球放入n个不同的盒子 *输入每行有两个正整数n和k */ int

盒子放球的DP

URAL1114 题目大意: 有N个盒子,有红色和蓝色两种颜色的球.红球有A个,篮球有B个.现在随意的向盒子里放球, 每个盒子可以放一种颜色的球,也可以放两种颜色的球,也可以不放球.球不必全都放进盒子里.问:总共有多少种方法. 状态dp[i][j][k] 表示向i个盒子里放j个篮球和k个红球的方案数目 状态转移方程:dp[i][j][k]=对dp[i-1][jj][kk] (0<=jj<=j,0<=kk<=k) 求和 最终结果是:在n个盒子里放  不定数目的球的种类数和即   对d

排列组合+组合数取模 HDU 5894

1 // 排列组合+组合数取模 HDU 5894 2 // 题意:n个座位不同,m个人去坐(人是一样的),每个人之间至少相隔k个座位问方案数 3 // 思路: 4 // 定好m个人 相邻人之间k个座位 剩下就剩n-(m+1)*k个座位 5 // 剩下座位去插m个不同的盒子==就等价n个相同的球放m个不同的盒子 6 // 然后组合数出来了 7 // 乘n的话是枚举座位,除m是去掉枚举第一个座位的时候,剩下人相邻的座位相对不变的情况 8 9 #include <iostream> 10 #incl

高中数学排列组合

一.特殊元素和特殊位置优先策略 例1.由0,1,2,3,4,5可以组成多少个没有重复数字五位奇数. 解:由于末位和首位有特殊要求,应该优先安排,以免不合要求的元素占了这两个位置. 先排末位共有 然后排首位共有 最后排其它位置共有 由分步计数原理得 二.相邻元素捆绑策略 例2. 7人站成一排 ,其中甲乙相邻且丙丁相邻, 共有多少种不同的排法. 解:可先将甲乙两元素捆绑成整体并看成一个复合元素,同时丙丁也看成一个复合元素,再与其它元素进行排列,同时对相邻元素内部进行自排.由分步计数原理可得共有种不同

计算机算法基础 ——数学(排列组合函数)

一 排列 1.从n个元素中取r个元素排列的全体数目 Pnr=P(n,r)=n(n-1)(n-2)...(n-r+1)=n!/(n-r)!                  :例:n个球取r个放入r个不同盒子,每个盒子一个球,多少种放法 2. n个元素的全排列 Pnn=P(n,n)=n! 3.例:随机选n(n<365)个人,求其中至少有两人生日相同的概率. n个人的生日的序列数:365n n个人生日均不相同的概率:P(365,n) 故:1-P(365,n)/365n 4.圆排列 从n个元素中取r个

学习排列组合总结

刚看了 一点点排列组合的书,写点总结: 首先最基本的2个 公式(貌似数学选修2-几来着有的,还有个什么二项式定理,就是求(a+b)^n展开后的东东.): 1.排列数 A(n,r)=n*(n-1)*(n-2).......*(n-r+1)=n!/(n-r)!(可以理解为从n个颜色不相同的球里取r个且取的顺序不同就算是不同的方案的方案数),另外A(n,n)=n!,有的地方A用P来表示,习惯问题罢了:证明也比较容易(自己写的,可能和标准的思路不一样,下同.): 对于第一个球,有n种取法:第二个有n-1

放球问题 组合数学 转自百度百科

放球问题是指把 n个球放到 m个盒子里的方案数.它是组合数学的一个非常重要的问题.根据球是否相同,盒子是否有区别,是否允许有空盒以及n与m 的大小关系,放球问题可分成 16 个子问题.不同情况总结见下表. 1,n 个球有区别,m 个盒子有区别,允许有空盒,n≥m≥1 由于可以有空盒,所以每个球可以放到m个盒子的任意一个盒子里.又因为盒子是有区别的,所以对于任意一个球有m种不同的选择. n个球是有区别的,所以总共有 种方案.比如,当n=3 时,第 1 个球有m种不同选择,第 2 个球有m种不同选择

HDU ACM 4465 Candy-&gt;概率-数学期望-排列组合

题意:有两个箱子,里面各放有糖n个,每天从两个之中任取一颗糖,突然有一天小孩取糖时发现一个盒子里空了,问另一个盒子里面现在有多少糖(求期望值)? #include<iostream> #include<cmath> using namespace std; double F[400008]; double C_N_M(int n,int m) { return F[n]-F[m]-F[n-m]; } void Init() { int i; F[0]=0; for(i=1;i<

Exercise(16):排列组合

/* 排列组合 问题描述: 给定n个数,求出1,2,...,n的所有排列组合. (使用深度优先搜索算法) 输入描述 InputDescription 第一行输入整数n(0<n<=100) 输出描述 OutputDescr 每行n个用空格隔开的数,表示一种排列组合 样例输入 SampleInput 3 样例输出 SampleOutput 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 问题分析: 有n个数,抽象为n个盒子,每个盒子放1~n之中的一数. 1.在盒子一里放入1