```
class Solution:
# @param n, an integer
# @return an integer
def climbStairs(self, n):
if n == 0 or n == 1:
return n
else:
return reduce(lambda x,y: x+y, [len(list(itertools.combinations(range(n),x+1))) for x in range(n/2)]) + 1
```