#include<stdio.h>
#include<string.h>
const int MAXN=100;
int arr[MAXN];
int m=0;
int n=0;
int cnt=0;
void zuhe(int num,int start,int len,int *arr)
{
if(num==0)
{
int i=0;
for(;i<n;++i)
{
printf("%d ",arr[i]);
}
printf("\n");
cnt++;
}
else if(num>len)
{
return;
}
else
{
arr[start]=0;
zuhe(num-1,start+1,len-1,arr);
arr[start]=1;
zuhe(num,start+1,len-1,arr);
}
}
int main()
{
scanf("%d%d",&m,&n);
int i=0;
for(;i<n;++i)
{
arr[i]=1;
}
zuhe(m,0,n,arr);
printf("total kind:%d\n",cnt);
return 0;
}
递归求排列组合-组合篇
最新推荐文章于 2024-07-15 20:17:23 发布