class Solution {
public:
int climbStairs(int n) {
if(n == 1) return 1;
if(n == 2) return 2;
int ans[3];
ans[0] = 1;
ans[1] = 2;
for(int i=2;i<n;++i)
{
ans[2] = ans[0] + ans[1];
ans[0] = ans[1];
ans[1] = ans[2];
}
return ans[2];
}
};
这道题一开始用递归超时了,脑子迷迷糊糊的转不过弯。。。