[1046] 整数划分
2014-07-29 13:27
211 查看
传送门:http://acm.nbut.edu.cn/Problem/view.xhtml?id=1046
#include<stdio.h> int a[55]; int n; void dfs(int cnt, int sum, int pos) { if(sum == n) { printf("%d", a[0]); for(int i = 1; i < cnt; i++) { printf(" %d", a[i]); } printf("\n"); } else { for(int i = pos; i <= n; i++) { if(sum + i > n) continue; a[cnt] = i; dfs(cnt + 1, sum + i, i); } } } int main() { while(~scanf("%d", &n)) { dfs(0, 0, 1); } return 0; }
相关文章推荐
- NOJ [1046]整数划分
- 递推之整数划分问题(2)
- 整数划分问题(Java版)
- UESTC 1726 整数划分(母函数)
- 整数划分问题
- NYOJ 176 整数划分(二)
- NYOJ 90 —— 求正整数n划分为若干个正整数的划分个数
- 整数划分问题
- 整数划分《递归法》
- 整数划分
- HDU 1028 整数划分
- 整数划分程序
- [算法][递归] 整数划分 种类数
- 放苹果与整数划分问题(by幻星总结)
- 整数划分(C语言实现)
- UESTC 1726 整数划分(母函数水题)
- 百练 04 简单的整数划分问题
- OJ演练--整数划分(经典DP问题)
- C++ python STL 整数划分递归算法(即一个数分为几个数的和)
- 整数的划分