Stay Hungry Stay Foolish

프로그래머스 코딩테스트/Level 1

[Programmers] L1. 부족한 금액 계산하기 (Python)

dev스카이 2024. 10. 25. 16:50

[문제 링크] 👇

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr


풀이

이용료 구하기

for i in range(1, count + 1):
    answer += price * i
  • N배 이므로 1부터 count 까지 처음 이용료인 price에 곱한다.
  • 곱한 결과를 더하면서 누적한다.

 

부족한 금액 출력하기

if answer - money > 0:
    return answer - money
else:
    return 0
  • 금액이 부족하지 않을 수도 있다. 따라서 금액이 부족한지 아닌지 구분한다.
  • 이용료에서 자신이 가지고 있는 금액인 money를 빼서 그 값이 양수이면,
    • 이용료 - 가지고 있는 금액
  • 음수이면(false 이면),
    • 0을 반환한다.

 

 

Solution

def solution(price, money, count):
    answer = 0
    for i in range(1, count + 1):
        answer += price * i
    if answer - money > 0:
        return answer - money
    else:
        return 0

 

 

👩‍💻 회고

금액이 부족하지 않으면 0을 반환해야 하는 문제 때문에 처음 제출에 실패했었다. if 문에서 answer - money 라고 안 하고 단순히 answer 라고 해서 모두 금액이 부족하다고 판단한 것이다. 바보였다.