七个房间,每个房间最多可以住5人,有5个人去住,有多少种组合?
的有关信息介绍如下:修改和补充:
发现了程序一唯高衫个参数错误(算法没问题),念数做了修改。
同时也发现,可以用数学方法直接计算。
因为每个房间最多住5人,一共也只有5人。所以,题目可以转换为:每个人选择房间的情况有7种。
因此,总的组合数就是 7*7*7*7*7 = 16807种。
原回答:
通常,房间和人都是有区别的。题主没有说明。
因此,就假定房间和人都是有区别的。也就是,房间有次序(编号),人有区别(不用的人,不同指腔的个体)。
这就需要进行分类讨论。由于分类情况太多,达到462种情况,即使可以归纳也比较繁琐。因此,编程进行分类讨论和计算。
结果是,有16807种组合。
附:计算结果(限于篇幅,只输出开头和最后的部分)和 fortran代码