E.g。让我们假设我们有1个A型球,2个B型球和3个C型球。 然后我们必须从袋子中取出的最小球数,以确保至少2个球将是相同类型的是“4”(每个球一个,第一个和第四个球可以是B或C型) )。
我们怎样才能找到至少n
个球的数量相同的球。
答案 0 :(得分:1)
tldr; -(2*N-2*N*M-3*M+M*M)/2
如果你有
A, 2B, 3C...
你可以画出来:
1 C B A
2 C B
3 C
您的最低人数为2,将填写lvl1 + 1
1 D C B A
2 D C B
3 D C
4 D
现在2个球的最小值是4 + 1 = 5,而lvl 3是3 + 4 + 1 = 8
要达到具有N个字母的lvl M,循环为:
for (B=1,n=0; n<M-1; n++)
B+=N-n;
这个的一般数学表示是:
可以扩展为:
-(2*N-2*N*M-3*M+M*M)/2
答案 1 :(得分:0)
为了解决这个问题,一个简单的方法就可以了。只需将所有数量小于n的球(即相同类型的球的最小数量)加起来。然后从所有剩余的球中加起来(n - 1)。您的答案将是总和+1。
考虑一个例子,假设你有10个A型球,15个B型球,20个C型球,你想要至少16个相同颜色的球。该方法表示将所有计数小于n的球加起来,即16 ..因此,总和为10 + 15 = 25.现在为所有剩余类型的球添加(n - 1),即仅键入C.因此sum =因此,你需要绘制至少16个球的最小球是 sum + 1 = 41 。