Algorithm/프로그래머스
[프로그래머스] Lv1 - 로또의 최고 순위와 최저 순위 (파이썬)
_temp
2022. 3. 15. 01:06
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):
minimum, maximum = 0, 0
for x in lottos:
if x in win_nums:
minimum += 1
minimum = 7 - minimum
maximum = minimum - lottos.count(0)
answer = [6 if maximum == 7 else maximum, 6 if minimum == 7 else minimum]
return answer
완전탐색
1. lottos의 모든 번호를 win_nums와 비교하여 같은 값이 있으면 minimum에 더해준다.
2. 순위를 반환해야 하기 때문에 7에서 빼준다
3. maximum을 구할 때, 0은 무엇이든지 될 수 있기 때문에 minimum에서 빼준다.
4. 7등은 없으므로 최하위 6등으로 반환