爬楼梯问题C++假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
力扣题目爬楼梯
假设你正在爬楼梯。需要 n
阶你才能到达楼顶。
每次你可以爬 1
或 2
个台阶。你有多少种不同的方法可以爬到楼顶呢?
示例 1:
输入:n = 2
输出:2
解释:有两种方法可以爬到楼顶。
1. 1 阶 + 1 阶
2. 2 阶
示例 2:
输入:n = 3
输出:3
解释:有三种方法可以爬到楼顶。
1. 1 阶 + 1 阶 + 1 阶
2. 1 阶 + 2 阶
3. 2 阶 + 1 阶
我们可以先把前几组写出来
一阶楼梯:1种方法
两阶楼梯:2种方法
三阶楼梯:1+2=3种方法
四阶楼梯:2+3=5种方法
五阶楼梯:3+5=8种方法
六阶楼梯:5+8=13种方法......以此类推,我们发现规律:从第三项开始,前两个结果相加,第i项=第i-1项+第i-2项。这个规律与斐波那契数列类似,可用其思想求解,代码如下:
class Solution {
public:
int climbStairs(int n) {
int num1 = 1;
int num2 = 2;
int tep = 0;
if (n <= 2)
{
return n;
}
else
{
for (int i = 2; i < n; i++)
{
tep = num1 + num2;
num1 = num2;
num2 = tep;
}
return tep;
}
}
int main()
{
int n = 0;
printf("请输入一个正整数->");
scanf("%d", &n);
int a = climbStairs(n);
printf("%d\n", a);
system("pause");
return 0;
}
};
参考:CSDN博主be_gin_ner
爬楼梯问题C++假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?相关推荐
- leetcode | 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 示例 1: 输入: 2 输出: 2 解释: 有两 ...
- 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
爬楼梯 假设你正在爬楼梯.需要 n 阶你才能到达楼顶.每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 动态规划法 class Solution:def climbStairs( ...
- 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?实现 int sqrt(int x) 函数。
今天我们来爬一爬楼梯. 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 示例 1: 输入: 2 ...
- 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
假设你正在爬楼梯.需要 n 阶你才能到达楼顶.每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 示例1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶. 1. 1 阶 ...
- 70. 爬楼梯:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
题目描述 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到楼顶. ...
- 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?(PHP 递推,动态规划)
假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 递推规则详解 在一个2XN的长方形方格中铺满1X ...
- 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。
假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 示例: 我在网上看到很多类似的题,但是发现大多数 ...
- Java实现假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。
假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 示例 1: 输入: 2 输出: 2 解释: 有两 ...
- JavaScript 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 标签:动态规划 本问题其实常规解法可以分成多个子 ...
最新文章
- ON REG EXPRESSION.SYNTAX
- 利用SparkSQL(java版)将离线数据或实时流数据写入hive的用法及坑点
- WPF与Win32互操作
- Oracle数据库实用脚本
- java docx4j 合并word_利用docx4j来处理word的合并与拆分
- mybatis_user_guide(7) SQL语句构建器类
- scp上传服务器加特殊端口
- 计算机键盘大赛活动总结,参加技能大赛的活动总结
- mybatis 多表查询-一对多(方法一 常用)
- Python爬虫入门并不难,甚至入门也很简单
- 换个思路理解Javascript中的this
- 【打印代码+好好理解+子串问题】LeetCode 76. Minimum Window Substring
- 老外写的关于协程的性能文章-主打http协议
- java echarts 饼图_饼图 | ECharts 数据可视化实验室
- u8系统怎么连接服务器,u8客户端连接服务器流程
- skb_buff结构体解析
- linux安装debian桌面,在Debian 10 Buster上安装Cinnamon桌面环境的方法
- 在线html编辑器 富文本转为html代码
- 软件测试工程师面试如何回答购物车怎么进行测试分析?
- 说说short s = 1; s = s + 1;有没有问题?如果有怎么解决?