728x90
https://programmers.co.kr/learn/courses/30/lessons/82612
function solution(price, money, count) {
var answer = -1;
// 내가 필요한돈
let need = 0;
// 빈배열
let arr = [];
// for문을 돌면서 배열에 price배수를 넣어줄 예정
//arr.push(price*i) - i가 0이면 price에 곱해서 0이되버려서
// i=1로 시작하고 대신 count도 1 늘려줌
for(let i=1; i<count+1; ++i){
arr.push(price*i)
// 필요한돈에 배열의 0번인덱스부터 넣어주기위해 1을빼줌
need += arr[i -1]
}
// 답은 필요한돈 - 가진돈
answer = need - money;
// 근데 가진돈이 많을경우는 0을리턴
if(answer < 0)
return 0
return answer;
}
나는 배열을 사용해서 필요한 데이터들을 관리했다.
정답코드는 가우스공식을 이용했다.
function solution(price, money, count) {
const tmp = price * count * (count + 1) / 2 - money;
return tmp > 0 ? tmp : 0;
}
728x90
'알고리즘' 카테고리의 다른 글
프로그래머스 Level 1 - 문자열 다루기 기본(Javascript) (0) | 2022.05.14 |
---|---|
프로그래머스 Level 1 -문자열 내 p와 y의 개수(Javascript) (0) | 2022.05.14 |
피보나치 수열 - 자바스크립트 for loop 사용, 재귀함수x (0) | 2022.05.13 |
프로그래머스 Level 1 -음양 더하기(Javascript) (0) | 2022.05.13 |
프로그래머스 Level 1 -없는 숫자 더하기(Javascript) (0) | 2022.05.13 |