当前位置:网站首页>P1025 数的划分 (DFS)

P1025 数的划分 (DFS)

2021-08-10 08:02:41 wx6110fa547fd20

P1025 数的划分 (DFS)

 题目传送门

题意:求和为k个数和为n的组合总数。

思路:显然求组合只需按升序DFS即可。

#include<cstdio>
int n,k;
int dfs(int cnt,int x,int re){//re(remain)
	if(cnt==k) return re==0;
	if(re==0) return cnt==k;
	int ans=0;
	for(int i=x;i<=re;i++)
		ans+=dfs(cnt+1,i,re-i);
	return ans;
}
int main(){
	scanf("%d%d",&n,&k);
	printf("%d\n",dfs(0,1,n));
	return 0;
} 

      
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.

版权声明
本文为[wx6110fa547fd20]所创,转载请带上原文链接,感谢
https://blog.51cto.com/u_15326986/3328290

随机推荐