6개의 번호가 모두 일치하면 1순위, 5개 일치 : 2순위 .. 1개 이하 일치 : 6순위
알아볼 수 없는 번호(unknown) : 0
위의 예제에서 최고순위는 unknown이 win_nums에 모두 있을 경우 4개번호일치(3등)이고, 최저순위는 unknown이 win_nums에 모두 없을 경우 2개 번호 일치(5등)
구매(lottos) = len : 6, 0~45, 중복x
당첨(win_nums) = len : 6, 1~45, 중복x
return [최고순위,최저순위]
solution
def solution(lottos, win_nums): answer = [] rank = {6:1,5:2,4:3,3:4,2:5,1:6,0:6} unknown = lottos.count(0) count = 0 for i in lottos: if i in win_nums: count += 1 max_correct = count + unknown min_correct = count answer.append(rank[max_correct]) answer.append(rank[min_correct]) # return [최고순위,최저순위] return answer
improve
def solution(lottos, win_nums): answer = [] rank = [6,6,5,4,3,2,1] unknown = lottos.count(0) count = 0 for i in lottos: if i in win_nums: count += 1 # return [최고순위,최저순위] return [rank[unknown + count], rank[count]]