首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【洛谷习题】P1255 楼梯

题目描述 楼梯有N阶,上楼可以一步上一阶,也可以一步上二阶。 编一个程序,计算共有多少种不同的走法。 输入格式 一个数字,楼梯。 输出格式 走的方式几种。...输入样例 4 输出样例 5 说明/提示 60% N<=50 100% N<=5000) 思路与解法 根据题意会发现,到每阶楼梯的走法数量和斐波那契数列很相像,都是f[i] = f[i-2]+f[i-1...于是完全按公式写出一个解法 #include using namespace std; unsigned long long f[5005]; //存储走到第i阶楼梯有多少种走法的余数...cout << f[n][i]; cout << endl; return 0; } 上面用的是字符数组存储数值,也可以直接使用整型数组来存储,更加方便计算,同时在计算方面,可以直接遍历两每位...> using namespace std; int n,len=1,f[5003][5003];//f[k][i]--第k阶台阶所对应的走法数 void hp(int k)//高精度加法,k来存阶

31020
您找到你想要的搜索结果了吗?
是的
没有找到

动态规划:爬楼梯

楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。...爬到第一层楼梯有一种方法,爬到二层楼梯有两种方法。 那么第一层楼梯再跨两步就到第三层 ,第二层楼梯再跨一步就到第三层。...所以到第三层楼梯的状态可以由第二层楼梯 和 到第一层楼梯状态推导出来,那么就可以想到动态规划了。...总结 这道题目和动态规划:斐波那契题目基本是一样的,但是会发现本题相比动态规划:斐波那契难多了,为什么呢?...关键是 动态规划:斐波那契 题目描述就已经把动规五部曲里的递归公式和如何初始化都给出来了,剩下几部曲也自然而然的推出来了。

78310

楼梯问题

问题描述: 假设你现在正在爬楼梯楼梯有 n 级。每次你只能爬 1 级或者 2 级,那么你有多少种方法爬到楼梯的顶部? 输入格式 第一行输入一个整数 n(1≤n≤50),代表楼梯的级数。...输出格式 输出爬到楼梯顶部的方法总数。 样例输入 5 样例输出 8 n级楼梯,每次只可以爬1-2级。...这个问题相当于将n分解为1和2个相加,有多少种分法,而每种分法中1、2又有几种不同的排法。...那么换一种想法: 级数n每增加一级的总可能f(n),相当于从n-2级(可能f(n-2))再走2级或者由n-1级(可能f(n-1))再走一级,这样既可得: f(n)=f(n-1)+f...int main() { int n, i; scanf("%d", &n); long long int a[n]; /*由于n-2大于0,需要先计算第一级与第二级的可能*

41710
领券