【题目描述】
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
【思路】
之前的台阶是一次1或2级,如今可以1~n级,举一反三,那么fn = fn-1+fn-2 + …+f1 + 1
【代码】
int jumpFloorII(int n) {
if(n < 3) return n;
int res;
int sum = 3;
for(int i = 3; i <= n; i++)
{
res = sum + 1;
sum += res;
}
return res;
}