기본가격과, 현재 가진 돈, 놀이기구를 타는 횟수를 입력하면
부족한 금액을 리턴하는 문제이다.(돈이 부족하지 않을경우 0을 return)
이 놀이기구는 1번 타면 기본가격
2번 타면 기본가격*2
3번 타면 기본가격*3 ...
이렇게 타는 횟수마다 요금이 인상된다.
나의 풀이는 이렇다!
def solution(price, money, count):
answer = 0
total = 0
while count > 0:
total += count * price
count -= 1
answer = money - total
if answer > 0 :
return 0
return -answer
다른 분들의 풀이를 보니
등차수열의 합을 구하는 공식을 이용해서 문제를 해결하셨다.
등차수열의 합공식을 검색해봤다.
1번 식을 활용하면 좋겠다.
def solution(price, money, count):
return max(0,price*(count+1)*count//2-money)
조건문 사용하지 않고 맥스로 결과 값을 리턴한 것도 굿...
깔끔~! 그 자체였다
저 공식들 배울 때 어디다 쓰나 했는데, 여기에 쓰는구만...