我要失业了 Day 1 剑指Offer 10-II.青蛙跳台阶问题
2020-06-06 05:22
585 查看
受疫情影响只能宅家,没有实验室的氛围完全成为一条咸鱼,小论文交给老师也没有恢复,今天开始记录剑指offer的刷题过程。
这道题让我自己数的话还真数不过来,可能这就是智商吧,然后书上说这个相当于斐波那契数列,当n>2的时候就有两种跳法,第一个是起步的时候跳一下,剩下的就是n-1的跳法,如果起步跳两下的话就是n-2的跳法,然后这不就是f(n)=f(n-1)+f(n-2)嘛,既然斐波那契数列的样子已经出来,剩下的就交给递归去解决?
先看题目:
一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。
答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。
示例 1:
输入:n = 2
输出:2
示例 2:
输入:n = 7
输出:21
再看代码:
class Solution { public: int numWays(int n) { int fn = 0; int fn_1 = 1; int fn_2 = 1 ; if (n == 0) return 1; if (n == 1) return 1; int i = 2; while(i<=n) { fn = (fn_1 + fn_2)%1000000007; fn_2 = fn_1; fn_1 = fn; i++; } return fn; } };
嗯,跟上一道题一毛一样没跑了,唯一的不同就是f(0)=1,不过为什么台阶数是0还有一种跳法?不跳也算一种吗…
先这样了,剩下的时间要么看看链表,要么再肝一道?
相关文章推荐
- 剑指Offer LeetCode 面试题10- II. 青蛙跳台阶问题
- 面试题10- II. 青蛙跳台阶如此简单 剑指offer
- 剑指offer面试题9-青蛙跳台阶及其变种问题
- 我要失业了 Day 3 剑指Offer 58 - II. 左旋转字符串
- 我要失业了 Day 2 剑指Offer 57 - II. 和为s的连续正数序列
- 剑指offer面试题9 斐波那契数列及青蛙跳台阶问题
- [剑指offer]算法8 青蛙跳台阶问题
- 剑指offer中的青蛙跳台阶问题
- 剑指offer青蛙跳台阶问题
- 剑指offer-----青蛙跳台阶问题(1)
- Leecode 面试题10- II. 青蛙跳台阶问题(斐波拉契数列)
- 剑指offer-算法题练习:part8 跳台阶-斐波那契数列问题
- 剑指offer-青蛙跳台阶
- 斐波那契及青蛙跳台阶@剑指offer
- 剑指offer 面试题9 斐波那契数列/青蛙跳台阶/矩形覆盖/变态跳台阶
- 数据结构与算法-斐波那契相关(二):剑指offer-青蛙跳台阶
- 剑指offer-chapter2-面试题9-青蛙跳台阶(java)
- C++,剑指offer青蛙变态跳台阶
- 剑指offer--- 斐波那契数列的应用&&青蛙跳台阶(1 或 2 级)
- 剑指offer-肺部拉契-青蛙跳台阶