출처: 프로그래머스 코딩 테스트 연습

🐝 문제

image

🍯 풀이

제출한 코드

1
2
3
4
5
6
7
8
9
def solution(price):
    if price >= 500000:
        return int(price*0.8)
    elif price >= 300000:
        return int(price*0.9)
    elif price >= 100000:
        return int(price*0.95)
    else:
        return int(price)

다른 분 코드

1
2
3
4
5
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)

딕셔너리를 사용해서 price와 할인률을 키와 값의 쌍으로 추가했다.
for 반복문의 in 다음에 items 메서드를 사용하면 딕셔너리 자료의 키와 값을 쌍으로 반복시킬 수 있다.
첫 번째 카운터 변수 discount_price, discount_rate는 키 값, 두 번째 카운터 변수에는 값이 들어간다.

🌞 정보 : 공부 기록용 블로그입니다. 오타나 내용 오류가 있을 경우 알려주시면 감사하겠습니다.

댓글남기기