[프로그래머스] 로또의 최고 순위와 최저 순위Lv.1 - Python

GoshK·2022년 1월 31일
0

[프로그래머스] Python

목록 보기
40/68
post-thumbnail

[프로그래머스] 로또의 최고 순위와 최저 순위Lv.1

나의 풀이

def solution(lottos, win_nums):
    rank = [6, 6, 5, 4, 3, 2, 1]
    match_num = 0
    for i in range(len(lottos)):
        if lottos[i] in win_nums:
            match_num += 1
    low = match_num
    high = match_num + lottos.count(0)

    return [rank[high], rank[low]]
  • 맞는 숫자가 1개 이하일 경우 6등, 2개 - 5등, 3개 - 4등, 4개 - 3등, 5개 - 2등, 6개 - 1등 이런 식으로 로또의 순위가 매겨져있다.
  • 점수의 범위는 0 - 6 총 7개의 숫자가 나올 수 있다.
  • 0과 1은 모두 6점 처리이기 때문에, 리스트에 6을 두개 추가하였다.
  • 그다음 로또의 숫자와 당첨 번호의 숫자가 같으면 match_num 변수에 1을 더해준다.
  • 최저 순위는 일치하는 숫자의 개수, 최고 순위는 일치하는 숫자의 개수 + 0의 개수를 더해준다.
  • 그리고 각 점수에 맞는 순위를 리스트로 반환한다.

0개의 댓글