알고리즘/프로그래머스

프로그래머스 - 로또의 최고 순위와 최저 순위

시나모온 2022. 2. 20. 02:47

문제 링크입니다 : https://programmers.co.kr/learn/courses/30/lessons/77484

 

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

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

programmers.co.kr

 

 

 

 

 

def solution(lottos, win_nums):
    answer = []
    
    
    def get_rank(score):
        return min(7 - score, 6)
    
    
    
    s = set()
    for num in win_nums:
        s.add(num)
    
    
    zero_cnt = 0
    matching_cnt = 0
    
    for my_num in lottos:
        if my_num == 0:
            zero_cnt += 1
            continue
        if my_num in s:
            matching_cnt += 1
    
        
    answer.append(get_rank(matching_cnt + zero_cnt))
    answer.append(get_rank(matching_cnt))
    
    
    return answer

 

 

 

 

개발 환경 : vscode

지적, 조언, 질문 환영입니다! 댓글 남겨주세요~