[ 문제 설명 ]
[ 아이디어 ]
- 생각의 흐름대로 한번 탈때마다 매번 증가된 가격을 더하여 비교하는 방법
- 가우스의 일화를 토대로 빠르게 구하는 방법
원래라면 1번으로 구현을 해본 다음에 2번으로 넘어가는 흐름을 코테를 연습해봤겠지만 이번엔 바로 2번 아이디어로 구현을 해보았다.
[ 코드 ]
function solution(price, money, count) {
let answer = -1;
let total = count * ( count + 1) / 2; // 전체 수행 횟수(가우스's 아이디어)
if ( money >= price * total) { // 충분한 가격임으로 탈 수 있다.
answer = 0;
}
else {
answer = price * total - money // 부족한 가격을 반환한다.
}
return answer;
}
[ 팁 ]
학창 시절에 읽었던 수학책을 잘 상기해보자. 이 일화는 등차수열? 이 부분에서 나왔던거같다.
나는 그때 당시 나보다 몇 살이나 어린 10살의 가우스보다 못한 머리를 가지고 있구나 실망했던 기억이 있다.
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 위클리 챌린지 > 4주차 - 자바스크립트 (0) | 2021.08.23 |
---|---|
[프로그래머스] 위클리 챌린지 > 2주차 - 자바스크립트 (0) | 2021.08.17 |
[프로그래머스] 연습문제 > 숫자의 표현 - 자바스크립트 (0) | 2021.06.14 |
[프로그래머스] 2018Kakao > 파일명 정렬 - 자바스크립트 (0) | 2021.05.10 |
[프로그래머스] 2021Kakao > 합승 택시 요금 - 자바스크립트 (0) | 2021.05.07 |
댓글