728x90
문제
프로그래머스 - 로또의 최고 순위와 최저 순위 - 파이썬 풀이
코드
def solution(lottos, win_nums):
count = 0
zero = 0
a,b = 0,0
for i in lottos:
if i == 0:
zero += 1
elif i in win_nums:
count += 1
b = 7-count if count != 0 else 6
a = 7-zero-count if zero != 0 else b
return [a,b]
풀이
level1 인 문제이니만큼 단순한 문제이다.
숫자가 인식되지 않는 0 의 개수를 zero 에 따로 담고, 인식되는 번호 중 로또 추첨 번호와 맞는 개수를 count 에 담았다. return 되는 값 중 뒤에 있는 값은 무조건 count 로만 판단하기 때문에 b 를 통해 순위를 계산했다.
7-count 를 하면 등수가 나오게 되는데 count 가 0일 때만 6 처리를 하면 완성이다.
a는 0의 개수와 count의 개수를 합하여 7에서 빼면 등수가 나오는데 0의 개수가 하나도 없으면 count 개수 그대로 의존하니 b를 넣으면 끝.
300x250
'코딩코딩' 카테고리의 다른 글
[이코테] 왕실의 나이트 - 파이썬 (0) | 2021.06.10 |
---|---|
[프로그래머스] level2 - 짝지어 제거하기 : 파이썬(Python) 풀이 (2) | 2021.05.26 |
[프로그래머스] level1 - 신규 아이디 추천 : 파이썬(Python) 풀이 (0) | 2021.05.04 |
[프로그래머스] level1 - 두 개 뽑아서 더하기 : 파이썬(Python) 풀이 (0) | 2021.04.02 |
[프로그래머스] level1 - 모의고사 : 파이썬(Python) 풀이 (0) | 2020.12.24 |