题解 | #跳台阶#
跳台阶
http://www.nowcoder.com/practice/8c82a5b80378478f9484d87d1c5f12a4
归纳法:
第一步:第一行是number值,第二行是步数,归纳完就是f(n) = f(n-1) + f(n-2)
第二步:找循环,number = 3,需要循环1次。number = 4,需要循环2次... ...
1 2 3 4 5 6 7
1 2 3 5 8 13 21
# -*- coding:utf-8 -*-
class Solution:
def jumpFloor(self, number):
# write code here
if number <= 0 :
return 0
elif number == 1:
return 1
elif number == 2:
return 2
else:
a = 1
b = 2
i = 0
while i <= number-3:
i+=1
a, b = b, a+b
return b