<p>这是leetcode上的一个问题。
你在爬楼梯。它需要n步才能到达顶端。在</p>
<p>每次你可以爬1到2步。你能用多少种不同的方式爬到顶端?在</p>
<p>注:给定n为正整数。
为什么它显示了这一点?在</p>
<p>显示公司标记
显示标记</p>
<pre><code>class Solution(object):
def climbStairs(self, n):
twostairtimes = math.floor(n/2)
result = 0
twostairresult = 0
while (twostairtimes>=0):
onestairtimes = n - (2 * twostairtimes)
if onestairtimes == 0:
result+=1
elif twostairtimes ==0:
result+=1
else:
result += self.jiecheng(n)/(self.jiecheng(twostairtimes)*self.jiecheng(onestairtimes))
result += 1
twostairtimes=twostairtimes-1
return result
def jiecheng(self,n):
c = 1
for i in range(n+1):
c *= i
return c
</code></pre>