【发布时间】:2015-12-22 16:44:59
【问题描述】:
场景是这样的:一袋以下面额的硬币有 50 枚:
- 50 美分:5
- 25 美分:10
- 10 美分:15
- 5 美分:20
您可以从袋子中选择五枚硬币(无需更换)。顺序无所谓。总组合是 50 选择 5 或 2,118,760,但有多少组合总和小于 1 美元?不允许四个或更少硬币的组合。你必须选择五个硬币。
例子:
50 美分、25 美分、5 美分、10 美分、5 美分 - 好
50 美分、25 美分、25 美分、10 美分、10 美分 - 不好
这可以使用 Excel 完成吗?我想首先生成所有组合的列表,然后消除小于 1 美元的结果,但我没有看到任何方法。
使用excel以外的程序会更好吗?
【问题讨论】:
-
这是一道作业题吗?
-
不,我正在研究更容易的基本组合与排列。我只是好奇是否有办法解决这样的问题。我补了金额
-
它小于 1 美元,而不是 1 美元。甚至 5 个镍币也满足约束条件。
-
@Prune 完全正确。他们可能不是为这个例子选择的正确教派。我的问题实际上是关于如何消除基于另一个变量或调节器的组合。例如,50-50---* 总是会被淘汰。我从未听说过递归,但听起来 Python 是我必须学习的东西
-
我不认为递归是解决这个问题的最佳方法:只需循环选择五个硬币,每个合法选择一次(这是选择五次循环中的一个循环)。
标签: python excel statistics combinations probability