본문 바로가기

CS/알고리즘

[프로그래머스] 위클리 챌린지 1주차 - 상호 평가

728x90

2주 차 문제가 쉬워서 1주 차 풀었는데 1주 차는 더 쉽다.

 

문제

문제 보기

 

풀이

필요한 놀이기구 이용 금액을 for를 이용하지 않고 1~n까지의 합을 계산하면 된다.

1~n까지의 합 공식 : n x (n+1) / 2

 

다른 분 코드 중에 ans 변수를 생성하지 않고 Math.max를 이용해서 구했다.

직관적으로 이해할 수 있어서 좋은것 같다.

 

소스코드

class Solution {
    public long solution(int price, int money, int count) {
        long totalPrice = (count+1L) * count * price / 2;
        long ans = totalPrice - money;
        if(ans >= 0) {
            return ans;
        } else {
            return 0;
        }
    }
}