请高手指教!急用!!!如何用递归实现n个数相加和等于一个固定数,然后把所有符合条件的组合都输出

yuji163sk 2009-05-07 12:22:15
请高手指教!急用!!!如何用递归实现n个数相加和等于一个固定数,然后把所有符合条件的组合都输出
...全文
153 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
木头小菜 2012-07-19
  • 打赏
  • 举报
回复
#include "stdafx.h"

#include <stdio.h>

int a[100] ; int y;int N;

void outresult(int k)

{

int j;

printf("%d=%d",N,a[0]);

for(j=1;j<k;j++) printf("+%d",a[j]);

printf("\r\n");

}

void rd(int i ,int k)//递归法

{

if(i==0) outresult(k);

int j ;

for(j=i;j>=1 ;j--)

if (k==0||j<=a[k-1])

{

a[k]=j;

rd(i-j,k+1) ;

}

}

int _tmain(int argc, _TCHAR* argv[])

{

printf("请输入N");

scanf("%d",&N);

rd(N,0);

scanf("%d",&y);

return 0;

}
Error_Code 2009-05-07
  • 打赏
  • 举报
回复
这个是作业贴 建议自己做
qgylovelj 2009-05-07
  • 打赏
  • 举报
回复
怎么0分呢,不告诉你
内容概要:本文档提供了适用于算法竞赛的Java语言模板代码,重点涵盖动态规划与图论两大核心领域。动态规划部分包括01背包、完全背包、多重背包的二进制拆分优化、最长上升子序列(LIS)的O(n log n)解法以及最长公共子序列(LCS)的标准DP实现。图论部分涵盖了Dijkstra(堆优化)、SPFA(可检测负环)、Floyd-Warshall(多源最短路径)、Kruskal和Prim(最小生成树)等经典算法。此外还包含网络流领域的Dinic算法完整模板及其使用示例,适用于解决最大流问题。所有代码均以简洁高效的竞赛风格编写,具备直接应用价值。; 适合人群:具备Java编程基础,正在准备程序设计竞赛(如ACM/ICPC、蓝桥杯、力扣周赛等)的学生或开发者,尤其是对算法实现细节有较高要求的中高级选手。; 使用场景及目标:①快速查阅和复用经典算法模板,提升竞赛中的编码效率;②深入理解动态规划与图论算法的核心实现机制,强化算法调试与优化能力;③通过Dinic等高级算法掌握网络流问题的建模与求解方法; 阅读建议:建议结合实际题目进行练习,理解每段代码的边界条件与据结构设计,注重对算法复杂度和适用范围的掌握,并在实践中不断优化个人模板库。

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧