将青蛙跳台阶问题抽象成斐波那契数列问题
如青蛙跳到七级台阶时,实际上有两种跳法,一种是从六级跳一级上来的,一种是五级跳两级,故
f(7) = f(6)+f(5)
class Solution { public int numWays(int n) { if(n==0) return 1; int a = 1,b = 2,sum=0; for (int i=1;i<n;i++){ sum = (a+b)%1000000007; a = b; b = sum; } return a; } }
将青蛙跳台阶问题抽象成斐波那契数列问题
如青蛙跳到七级台阶时,实际上有两种跳法,一种是从六级跳一级上来的,一种是五级跳两级,故
f(7) = f(6)+f(5)
class Solution { public int numWays(int n) { if(n==0) return 1; int a = 1,b = 2,sum=0; for (int i=1;i<n;i++){ sum = (a+b)%1000000007; a = b; b = sum; } return a; } }