반응형
프로그래머스 부족한 금액 계산하기를 Python으로 풀어보겠다.
문제
간단한 문제라 이해는 쉽다.
구현
어차피 count만큼 탈것이므로
1부터 count까지 모두 더해주고 * price를 해 준다.
total에서 위의 값을 빼주면 되는 간단한 문제이다.
코드
def solution(price, money, count):
total = sum(range(count+1))*price
return total-money if total>money else 0
구현에 쓴 것과 같이 구현했다.
sum, range로 1부터 count값까지 더하고
total이 money보다 크다면 total - money를 반환, 아니라면 0을 반환하도록 했다.
다른 풀이
count번 타는 것은 등차수열의 합이므로 아래와 같이 구현도 가능하다.
def solution(price, money, count):
return max(0,price*(count+1)*count//2-money)
나의 코드를 조금 더 풀어서 쓴 형상의 코드는 아래와 같다.
def solution(price, money, count):
pay = 0
for i in range(1, count+1):
pay += (price * i)
if money < pay:
return pay - money
else:
return 0
파이썬은 여러 방향으로 구현이 가능하기에
위의 방법 중 취향에 맞는 코드를 고르면 될 것 같다.
반응형
'Coding Test > Python' 카테고리의 다른 글
[프로그래머스] [1차] 다트 게임 Python Code (0) | 2022.08.27 |
---|---|
[프로그래머스] [1차] 비밀지도 Python Code (0) | 2022.08.27 |
[프로그래머스] 두 개 뽑아서 더하기 Python Code (0) | 2022.08.27 |
[프로그래머스] 3진법 뒤집기 Python Code (1) | 2022.08.27 |
[프로그래머스] 최소 직사각형 Python Code (0) | 2022.08.27 |
댓글