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등으로 반환
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스] Lv1 - 숫자 문자열과 영단어 (파이썬) (0) | 2022.03.16 |
---|---|
[프로그래머스] Lv1 - 신규 아이디 추천 (파이썬) (0) | 2022.03.16 |
[프로그래머스] Lv1 - 신고 결과 받기 (파이썬) (0) | 2022.03.15 |
[프로그래머스] - 블록게임 (파이썬) (0) | 2022.02.15 |
[프로그래머스] - 매칭점수 (파이썬) (0) | 2022.02.15 |