[프로그래머스] 로또의 최고 순위와 최저 순위(Python)


문제

문제


문제 해설

알아볼 수 없는 숫자와 주어진 로또 번호로 최고 순위와 최저 순위를 매기는 문제입니다.

알아볼 수 없는 숫자는 0으로 되어있고, 하나를 맞춘 것은 모두 다 못맞춘 것과 동일하게 낙첨입니다.
최고 순위가 되려면 0으로 되어 있는 숫자를 모두 정답, 최저 순위가 되려면 0으로 되어 있는 숫자는 모두 오답으로 처리하면 됩니다.
그러므로 초기값을 7로 잡고 로또 번호를 맞추면 -1을 하여 순위를 조정한 뒤, answer에 값을 넣고 return하면 됩니다.


풀이 코드

def solution(lottos, win_nums):
    answer = []
    rank, zero = 7, 0

    for num in lottos:
        if num in win_nums:
            rank -= 1
        elif num == 0:
            zero += 1
    answer.append(min(rank - zero, 6))
    answer.append(min(rank, 6))
    return answer

좋은 웹페이지 즐겨찾기