赞
踩
- class Solution {
- public:
- int f[35];
- int fib(int n) {
- f[0] = 0;
- f[1] = 1;
- for(int i=2;i<=n;i++){
- f[i] = f[i-1] + f[i-2];
- }
- return f[n];
- }
- };
- class Solution {
- public:
- int climbStairs(int n) {
- vector<int> f(n+2,0);
- f[1]=1;
- f[2]=2;
- for(int i=3;i<=n;i++){
- f[i]=f[i-1]+f[i-2];
- }
- return f[n];
- }
- };
该题类似于斐波那契数,只是考虑了一下实际意义,即f[0] 没有意义。
f[i]:登上下标为i的台阶所需要的花费。
- class Solution {
- public:
- int minCostClimbingStairs(vector<int>& cost) {
- int n = cost.size();
- vector<int> f(n+2,0);
- f[0] = 0;
- f[1] = 0;
- for(int i=2;i<=n;i++){
- f[i] = min(f[i-1]+cost[i-1],f[i-2]+cost[i-2]);
- }
- return f[n];
- }
- };
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。