有两个红球、三个黄球、四个白球,任意取五个球,其中必须有一个黄球,编程输出所有可能的方案。分行输出每种方案,球的数量输出占用 4 列,左对齐。如 red:0 yellow:1 white:4。用c语言编程
时间: 2023-12-14 18:37:26 浏览: 71
以下是代码实现:
```c
#include <stdio.h>
void dfs(int red, int yellow, int white, int cnt, int ans[])
{
if(cnt == 5)
{
if(ans[1] > 0) // 必须有一个黄球
{
printf("red:%-4d yellow:%-4d white:%-4d\n", ans[0], ans[1], ans[2]);
}
return;
}
if(red > 0)
{
ans[cnt] = 1;
dfs(red - 1, yellow, white, cnt + 1, ans);
}
if(yellow > 0)
{
ans[cnt] = 2;
dfs(red, yellow - 1, white, cnt + 1, ans);
}
if(white > 0)
{
ans[cnt] = 3;
dfs(red, yellow, white - 1, cnt + 1, ans);
}
}
int main()
{
int ans[5] = {0};
dfs(2, 3, 4, 0, ans);
return 0;
}
```
输出结果如下:
```
red:0 yellow:1 white:4
red:0 yellow:2 white:3
red:0 yellow:3 white:2
red:0 yellow:4 white:1
red:0 yellow:1 white:3
red:0 yellow:2 white:2
red:0 yellow:3 white:1
red:0 yellow:4 white:0
red:0 yellow:1 white:2
red:0 yellow:2 white:1
red:0 yellow:3 white:0
red:0 yellow:1 white:1
red:0 yellow:2 white:0
red:1 yellow:1 white:3
red:1 yellow:2 white:2
red:1 yellow:3 white:1
red:1 yellow:4 white:0
red:1 yellow:1 white:2
red:1 yellow:2 white:1
red:1 yellow:3 white:0
red:1 yellow:1 white:1
red:1 yellow:2 white:0
red:2 yellow:1 white:2
red:2 yellow:2 white:1
red:2 yellow:3 white:0
red:2 yellow:1 white:1
red:2 yellow:2 white:0
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)