袋子里的三种球
Three type of Balls from Bag
我有一个听起来像这样的问题:
我们有一个装着球的袋子。有 R 个红球、B 个蓝球和 G 个绿球。
我需要找到从袋子中提取的最少数量,这样我确定我至少会有 K 个相同颜色的球。
任何人都可以提供任何想法吗?或者提示等?
如果K>max(R,G,B)
则问题无解。所以让我们假设 K <= max(R,G,B)
.
如果您无法控制提取哪个球,则最多需要 (即这是下限)min(R, (K-1))+min(G, (K-1))+min(B, (K-1))+1
提取显而易见的原因:提取 K-1
个红球(或所有红球,如果 R<K
),然后提取 K-1
个绿球(或所有绿球,如果 G<K
),最后提取 K-1
蓝球(如果 B<K
则全是蓝球)。现在至少剩下一个球——因为根据假设 max(R,G,B)>=K
——当我们提取它时,我们有 K
个相同颜色的球。 (这显然是最坏的情况。)
显然您至少需要 K
次提取(这是最好的情况)。
既然你用probability
标记了问题,也许你只能随机抽取一个统一选择的球。在那种情况下,我们可以讨论在我们最终得到相同颜色的 K
个球之前所需的预期提取次数。这是一个有趣的问题。
你需要确保上键正常工作...当我测试上键时,它超出了 int 范围(我使用 java)
我有一个听起来像这样的问题: 我们有一个装着球的袋子。有 R 个红球、B 个蓝球和 G 个绿球。 我需要找到从袋子中提取的最少数量,这样我确定我至少会有 K 个相同颜色的球。
任何人都可以提供任何想法吗?或者提示等?
如果K>max(R,G,B)
则问题无解。所以让我们假设 K <= max(R,G,B)
.
如果您无法控制提取哪个球,则最多需要 (即这是下限)min(R, (K-1))+min(G, (K-1))+min(B, (K-1))+1
提取显而易见的原因:提取 K-1
个红球(或所有红球,如果 R<K
),然后提取 K-1
个绿球(或所有绿球,如果 G<K
),最后提取 K-1
蓝球(如果 B<K
则全是蓝球)。现在至少剩下一个球——因为根据假设 max(R,G,B)>=K
——当我们提取它时,我们有 K
个相同颜色的球。 (这显然是最坏的情况。)
显然您至少需要 K
次提取(这是最好的情况)。
既然你用probability
标记了问题,也许你只能随机抽取一个统一选择的球。在那种情况下,我们可以讨论在我们最终得到相同颜色的 K
个球之前所需的预期提取次数。这是一个有趣的问题。
你需要确保上键正常工作...当我测试上键时,它超出了 int 范围(我使用 java)