zentan66 / daily-coding

日常手写算法,编程题
0 stars 0 forks source link

【⭐️】LeetCode-计算力扣银行的钱 #39

Open zentan66 opened 3 years ago

zentan66 commented 3 years ago

Hercy 想要为购买第一辆车存钱。他 每天 都往力扣银行里存钱。

最开始,他在周一的时候存入 1 块钱。从周二到周日,他每天都比前一天多存入 1 块钱。在接下来每一个周一,他都会比 前一个周一 多存入 1 块钱。

给你 n ,请你返回在第 n 天结束的时候他在力扣银行总共存了多少块钱。

zentan66 commented 3 years ago

编码

var totalMoney = function(n) {
  let dp = Array(n + 1).fill(0)
  dp[1] = 1
  for(let i = 2; i < n + 1; i++){
    if (i % 7 !== 1) {
      dp[i] = dp[i - 1] + 1
    } else {
      dp[i] = dp[i - 6]
    }
  }
  return dp.reduce((a, b) => a + b, 0)
};