▶ 문제 설명
머쓱이네 옷가게는 10만 원 이상 사면 5%, 30만 원 이상 사면 10%, 50만 원 이상 사면 20%를 할인해줍니다.
구매한 옷의 가격 price가 주어질 때, 지불해야 할 금액을 return 하도록 solution 함수를 완성해보세요.
▶ 제한 사항
- 10 ≤ price ≤ 1,000,000
- price는 10원 단위로(1의 자리가 0) 주어집니다.
- 소수점 이하를 버린 정수를 return합니다.
▶ 입출력 예
price | result |
150,000 | 142,500 |
580,000 | 464,000 |
▶입출력 예 설명
입출력 예 #1
- 150,000원에서 5%를 할인한 142,500원을 return 합니다.
입출력 예 #2
- 580,000원에서 20%를 할인한 464,000원을 return 합니다.
▶ Code
def solution(price):
if price >= 500000:
return int(price*0.8)
elif price >= 300000 and price < 500000:
return int(price * 0.9)
elif price >= 100000 and price < 300000:
return int(price * 0.95)
else:
return int(price)
▶ Point
if, elif, else 의 조건문을 활용하여 price를 출력한다.
다른 풀이
def solution(price):
discount_rates = {500000: 0.8, 300000: 0.9, 100000: 0.95, 0: 1}
for discount_price, discount_rate in discount_rates.items():
if price >= discount_price:
return int(price * discount_rate)
discount_rates, discount_price, discount_rate를 변수로 설정하고 for문, if문 을 활용하여 'price * discount_rate' 를 출력한다.
'Developer > Programmers' 카테고리의 다른 글
[Programmers] LV 0. 순서쌍의 개수 (Python/파이썬) (0) | 2023.02.15 |
---|---|
[Programmers] LV 0. 짝수는 싫어요 (Python/파이썬) (0) | 2023.02.15 |
[Programmers] LV 0. 머쓱이보다 키 큰 사람 (Python/파이썬) (0) | 2023.02.12 |
[Programmers] LV 0. 중복된 숫자의 개수 (Python/파이썬) (0) | 2023.02.11 |
[Programmers] LV 0. 삼각형의 완성조건 (1) (Python/파이썬) (0) | 2023.02.10 |
댓글