其他分享
首页 > 其他分享> > LeetCode Daily 12

LeetCode Daily 12

作者:互联网

2022-1-15 T1716.计算力扣银行的钱

 

题目描述:

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

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

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

 

示例:

输入:n = 20
输出:96
解释:第 20 天后,总额为 (1 + 2 + 3 + 4 + 5 + 6 + 7) + (2 + 3 + 4 + 5 + 6 + 7 + 8) + (3 + 4 + 5 + 6 + 7 + 8) = 96 。

 

思路:

先计算出整周(为7天)时存入的钱,再计算剩余天数的存入钱数。

 

代码:

class Solution {
public:
    int totalMoney(int n) {
        int res = 0;
        for(int i = 0; i < n / 7; i++) {
            res += (countSum(7) + 7 * i);
        }
            res += (countSum(n % 7) + (n / 7) * (n % 7));
        return res;
    }
    
    int countSum(int n) {
        int sum = 0;
        for(int i = 1; i <= n; i++) {
            sum += i;
        }
        return sum;
    }
};

标签:12,countSum,int,res,Daily,存入,块钱,LeetCode,96
来源: https://www.cnblogs.com/LWHCoding/p/15806149.html