这个超时 递归
class Solution {
public:int climbStairs(int n) {
if(n==0)
return 1;
if(n==1)
return 1;
return climbStairs(n-1)+climbStairs(n-2);
}
};
所以用学到的动态规划
用一个东西存储中间量
class Solution {public:
int climbStairs(int n){
if(n==1)
return 1;
vector<int> a;
a.push_back(1);
a.push_back(1);
for(int i=2;i<n+1;i++){
int b=a[i-2]+a[i-1];
a.push_back(b);
//cout<<"vec "<<i<<": "<<a[i]<<endl;
}
return a[n];
}
};
acLA