标题:关于递归
取消只看楼主
九鸢
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2018-11-28
结帖率:66.67%
已结贴  问题点数:10 回复次数:1 
关于递归

第一次写递归
真的不知道怎么使
求教
一个正整数可以拆分成若干个正整数的和。例如正整数4,可以有4种拆分方法:
    4=3+1、4=2+2、4=2+1+1,4=1+1+1+1
用 n 表示待拆分的正整数,用 m 表示从 n 中拆出的最大正整数,则计算对正整数 n 共有多少种拆分方法可以下列递归公式:
              0     ( 当 n < 1 或 m < 1 时 )
              1                             ( 当 n = 1 或 m = 1 时 )
  count(n,m)= count(n, n)                   ( 当 n < m 时 )
              count(n, m-1) + 1             ( 当 n=m 时 )
              count(n-m, m) + count(n, m-1) ( 其他情况 )
编写递归函数,计算一个正整数有多少种拆分方法。
函数原型如下:
int count( int n, int m)
参数说明:n 待拆分的正整数,m 表示从 n 中拆出的最大正整数;函数返回值是拆分方法数。
例如输入:4, 输出:4
搜索更多相关主题的帖子: 递归 正整数 拆分 方法 count 
2018-12-02 14:52
九鸢
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2018-11-28
得分:0 
回复 2楼 幻紫灵心
我不懂为什么会有n<m的情况,按照m的定义 m不是等于n-1吗?
2018-12-03 17:34



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-491752-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.474383 second(s), 10 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved