将青蛙跳台阶问题抽象成斐波那契数列问题
如青蛙跳到七级台阶时,实际上有两种跳法,一种是从六级跳一级上来的,一种是五级跳两级,故
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;
}
}
京公网安备 11010502036488号