高进度算法使用习题一
题目::数楼梯
题目描述:

题目分析:本题采用了高进度与菲薄拉切数列求和
普通高进度算法
- 理解高进度加法实现特点,模拟竖式计算,如果数字之和大于10就可进位
a. 可以先把所有的数字相加, 然后再统计判断是否需要进位
b. 可以边加边判断时候需要进位,下面我将会采用两种方式进行展示 - 加法最后的结果一定是大于或者等于最大数的位数,所以最后一次可以判断下是否满足条件
- 然后元素逆序输出
根据题目分析可得:楼梯数f[n] = f[n-1] + f[n-2],可以采用二位数组f[n][k] 表示第n阶楼梯的方式共有k位种(此处k代表数字大小有k位)
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
const int mod = 100000000;
int n, len = 1, f[5000

这篇博客介绍了如何利用高进度算法和压位高进度算法解决数楼梯问题,该问题涉及到菲波那契数列求和。普通高进度算法通过模拟竖式计算并判断进位来实现,而压位高进度算法则在数组的每一位存储多位数值,类似于不同进制的加法。博客提供了问题分析及两种算法的思路解析。
最低0.47元/天 解锁文章
448

被折叠的 条评论
为什么被折叠?



