N台阶M步爬楼梯问题
递归
#include <iostream>using namespace std;// 总台阶数、最大步数
int solve(int n, int m)
{int res = 0;// 总台阶为0时终止循环if (n == 0)return 1;if (n >= m){for (int i = 1; i <= m; i++){res += solve(n - i, m);}}else{res = solve(n, n);}return res;
}int main()
{cout << solve(2,2) << endl;
}
更多推荐
台阶,爬楼梯
发布评论