알고리즘/프로그래머스

[프로그래머스] 로또의 최고 순위와 최저 순위 for python

정석이 2022. 3. 13. 17:08

 

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):
    rank = [6,6,5,4,3,2,1]
    total_low = 0
    
    for i in win_nums:
        if i in lottos:
            total_low += 1
            
    total_high = total_low + lottos.count(0)
    return rank[total_high], rank[total_low]

 

 

answer = [] 에서 .append() 하고 return 할 때 ''.join을 하려다가..음~

 

저런 방법을 알고 걍 절케 하기로 했다.

 

return은 걍 되는구나....!

 

 

 

i in lottos를 쓰면 lottos 리스트 안에 i가 있는지 T/F로 알려준다. 아주 편리해...

 

 

 

 

 

 

 

 

다른 사람 풀이인데 rank는 딕셔너리로 넣어놓고

 

 

set()을 이용해 교집합의 개수를 찾음. 아하~~~