본문 바로가기
코딩테스트/프로그래머스

프로그래머스 부족한 금액 계산하기 해설, 문제풀이 과정

by 코드스니펫 2023. 11. 22.
반응형

프로그래머스 부족한 금액 계산하기 해설, 문제풀이 과정

 

programmers logo

 

프로그래머스 내적 문제 소개와 해설, 필자의 문제풀이 과정과 가장 인기 있던 문제풀이에 대해 소개하겠습니다. 아래 풀이 과정을 보면서 코딩에 있어서 유익한 인사이트를 얻길 바랍니다. 

 

 

프로그래머스 부족한 금액 계산하기 문제

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

이번 알고리즘 문제는 새로운 놀이기구의 이용료가 매번 높아지는 상황에서, 특정 횟수만큼 놀이기구를 이용하려고 할 때 필요한 금액과 현재 소지금 사이의 차이를 계산하는 문제입니다. 주어진 가격, 소지금, 이용 횟수에 따라 필요한 금액을 계산하고 부족한 경우 그 차이를 반환해야 합니다.

 

 

필자의 문제풀이 해설, 반복문을 통한 누적 계산

 

 

처음 시도한 코드는 반복문을 활용하여 1부터 count까지의 값을 더하고, 이를 가격과 곱하여 필요한 총 금액을 계산하는 방식입니다. 그리고 현재 소지금과 비교하여 차이를 반환하도록 구현했습니다.

 

function solution(price, money, count) {
  var answer = 0;

  for (i = 1; i <= count; i++) answer += i;

  return answer * price - money > 0 ? answer * price - money : 0;
}

 

이 방식은 누적합을 이용해 구하는 간단한 방법이지만, 더 효율적인 방법이 있을 것 같습니다.

 

 

인기있는 문제풀이 해설, 등차수열을 활용한 계산

 

 

다른 개발자의 해결책은 등차수열의 합을 이용하여 계산하는 방식입니다. 등차수열의 합 공식을 활용하면 반복문을 사용하지 않고도 쉽게 필요한 금액을 계산할 수 있습니다.

 

function solution(price, money, count) {
    const tmp = price * count * (count + 1) / 2 - money;
    return tmp > 0 ? tmp : 0;
}

 

이 코드는 등차수열의 합을 이용하여 간결하게 문제를 해결하는 방식으로, 효율성이 뛰어나며 가독성도 좋습니다.

 

 

더 효율적인 문제해결을 위한 고민

 

이 문제를 통해 간단한 누적합 방법과 등차수열의 합 공식을 활용하는 방법을 비교해 보았습니다. 각각의 코드는 정확한 결과를 도출하지만, 등차수열을 활용한 방법은 반복문을 사용하지 않아 더 효율적입니다. 알고리즘 문제를 풀 때, 간결함과 효율성을 고려하여 코드를 작성하는 것이 중요합니다. 여러 해결책을 통해 다양한 방법을 익히고, 상황에 맞게 적절한 방법을 선택하는 연습이 필요합니다. 계속해서 다양한 문제에 도전하며 성장해 나가세요!

 

▼ 아래 글도 읽어보세요! ▼

 

 

프로그래머스 내적 해설, 문제풀이 과정, 인기 있는 문제풀이

프로그래머스 내적 해설, 문제풀이 과정, 인기 있는 문제풀이 프로그래머스 내적 문제 소개와 해설, 필자의 문제풀이 과정과 가장 인기 있던 문제풀이에 대해 소개하겠습니다. 아래 풀이 과정을

lemonlog.tistory.com

 

 

쿠키와 세션, 웹 개발에서 중요한 개념

쿠키와 세션, 웹 개발에서 중요한 개념 웹 개발에서 쿠키와 세션은 중요한 개념 중 하나입니다. 이 글에서는 쿠키와 세션의 정의, 동작 방식, 사용 사례 및 장단점에 대해 알아보겠습니다. 1. 쿠

lemonlog.tistory.com