코린이의 소소한 공부노트

[LeetCode/Easy] 1716. Calculate Money in Leetcode Bank 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 1716. Calculate Money in Leetcode Bank

무지맘 2023. 1. 2. 23:04

1. Input

1) 정수 n

 

2. Output

1) 다음 규칙에 따라 예금했을 때 n일에 은행 계좌에 있는 예금액을 반환

// 규칙

- 월요일에는 1을 예금한다.

- 매일 예금액이 1씩 늘어난다.

- 다음 월요일에는 이전 월요일보다 1 더 많이 예금한다.

 

3. Constraint

1) 1 <= n <= 1000

 

4. Example

Input: n = 10 -> Output: 37

설명:

- 월요일 ~ 일요일(7)까지 1+2+3+4+5+6+7=28만큼 예금한다.

- 그 다음주 월요일 ~ 수요일(3)까지는 2+3+4=9만큼 예금한다.

- 따라서 10일째의 예금 총액은 28+9=37이다.

 

5. Code

1) 첫 코드(2022/07/05)

int sum = 0;
int mon = 1;

while(n>0){
    if(n-7>=0){
        sum += (6+2*mon)*7/2;
        mon++; n -= 7;
    }else{
        for(int i=0 ; i<n ; i++)
            sum += mon+i;
        n=0;
    }
}
return sum;