diff options
Diffstat (limited to 'Computer_Science/leetcode/746-min_cost_climbing_stairs.c')
| -rw-r--r-- | Computer_Science/leetcode/746-min_cost_climbing_stairs.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Computer_Science/leetcode/746-min_cost_climbing_stairs.c b/Computer_Science/leetcode/746-min_cost_climbing_stairs.c new file mode 100644 index 0000000..74cc72b --- /dev/null +++ b/Computer_Science/leetcode/746-min_cost_climbing_stairs.c @@ -0,0 +1,14 @@ +#define MIN(a, b) ((a) > (b) ? (b) : (a)) +int minCostClimbingStairs(int* cost, int costSize) { + int dp[costSize + 1]; + if(costSize == 1) + return cost[0]; + dp[0] = 0; + dp[1] = 0; + + for(int i = 2; i < costSize + 1; i++) { + dp[i] = MIN(dp[i - 1] + cost[i - 1], dp[i - 2] + cost[i - 2]); + } + + return dp[costSize]; +} |
