高进度算法使用习题一
题目::数楼梯
题目描述:
题目分析:本题采用了高进度与菲薄拉切数列求和
普通高进度算法
- 理解高进度加法实现特点,模拟竖式计算,如果数字之和大于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[