본문 바로가기

programming/코테연습

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

728x90
반응형

그렇게 어렵지는 않았었다. 

일단 0이 (미지수) 몇개 있는지 세주고, 로또를 맞춘 번호가 있으면 match에 1씩 더해준다. 

 

match에 미지수의 갯수를 더하면 최고순위, match만 세면 최저순위가 된다. 

등수를 맞춰줘야 하는데, 그건 dict를 사용해서 switch~case 구문처럼 사용했다. 

 

그리고 answer list에 extends 해서 값을 하나씩 더해 리턴해줬다. 

def score(key):
    list={0:6,1:6,2:5,3:4,4:3,5:2,6:1}.get(key)
    return list

def solution(lottos, win_nums):
    answer = []
    zero=lottos.count(0)
    best=0
    worst=0
    match=0
    for i in win_nums:
        if i in lottos:
            match=match+1
            #print(match)
             
    best=match+zero
    worst=match
    
    best=score(best)
    worst=score(worst)
    print(f'best={best}')
    print(f'worst={worst}')
    
    
    
    answer.extend([best,worst])
    print(answer)
    return answer

solution(lottos, win_nums)


728x90
반응형