三色球问题

发布时间 2023-04-23 19:21:17作者: 为20岁努力

一个口袋中放有12个球,已知其中3个是红的,3个是白的,6个是黑的,现从中任取8个,问共有多少种可能的颜色搭配?

因为要取8个球,而红球与白球的个数都只有三个,则要取的红球个数和白球个数范围都为[0,3],而黑球个数则为8减去红球和白球个数,则我们可以通过2个for循环和一个条件判断求出种数。

 

#include<iostream>
using namespace std;
int main()
{
int num=0;//num表示颜色搭配的种数
cout<<" 红"<<"\t"<<"白"<<"\t"<<"黑"<<endl;
for(int i=0;i<=3;i++)
{
for(int j=0;j<=3;j++)
{
if(8-i-j<=6)
{
cout<<++num<<":"<<i<<"\t"<<j<<"\t"<<8-i-j<<endl;
}
}
}
return 0;
}

运行结果如下: