티스토리 뷰

728x90

https://programmers.co.kr/learn/courses/30/lessons/77484

 

코딩테스트 연습 - 로또의 최고 순위와 최저 순위

로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호

programmers.co.kr

 

  • 해설:

로또의 번호 6자리 중 알아볼 수 없는 번호 n자리를 포함하여 당첨될 수 있는 최고 등수와 최저 등수를 찾는 문제이다.

 

 

 

  • 풀이 :

내 로또 번호와 당첨 번호를 비교하여 일치하는 개수를 카운팅하고 이 등수가 최저 등수이다(무조건 맞춘 개수이므로) 또한 여기서 0 (번호를 알아볼 수 없는 자릿수) 의 개수를 더한 등수가 최고 등수이다.

 

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
def solution(lottos, win_nums):
    win = 0
    price = {
        6 : 1,
        5 : 2,
        4 : 3,
        3 : 4,
        2 : 5,
        1 : 6,
        0 : 6
    }
    for i in lottos:
        if i in win_nums:
            win += 1
    return [price[win+lottos.count(0)],price[win]]
cs
320x100
댓글
© 2022 WonSeok, All rights reserved