//下面我来举一个例子,用递归实现,在5个球中取3个球,假设把c球涂上颜色
然后把涂了颜色的和没涂颜色的分成2部分
这样在5个球中取3个就变成 4个取3个和4个取2个,依次类推,那么用递归实现就很简单了
下面实现代码
#define _CRT_SECURE_NO_WARNINGS
#include<stdlib.h>
#include<stdio.h>
//算法描述,到5个球取3个球,
int qu(int m, int n)
{
if (m < n) return 0; //在m个球取n个球,m<n不可能实现
if (n == 0) return 1;//在一堆球中取0个球,只有一种解法
return qu(m - 1, n) + qu(m - 1, n - 1);
}
int main()
{
printf(