728x90
반응형
💬 내가 작성한 python 코드
def solution(lottos, win_nums):
cnt = 0 # 일치 번호 갯수 세기
zero_cnt = 0 # 0 갯수 세기
for i in lottos: # 길이가 6
if i in win_nums:
cnt += 1
if i == 0: # 0 갯수 세기
zero_cnt += 1
maxi = 7-(zero_cnt+cnt)
mini = 7-cnt
if cnt == 0:
mini = 6
if zero_cnt+cnt <=1 :
maxi = 6
answer = [maxi, mini]
return answer
💬 더 나은 코드
def solution(lottos, win_nums):
rank = [6, 6, 5, 4, 3, 2, 1] # rank 리스트를 만들기
cnt_0 = lottos.count(0) # 0 세기
ans = 0
for x in win_nums:
if x in lottos:
ans += 1
return rank[cnt_0 + ans],rank[ans]
rank를 리스트로 만들어서 처리해주는 것이 더 좋은 방법이라고 생각한다.
728x90
'자료구조 및 알고리즘 > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 조건에 맞는 도서 리스트 출력하기 (SQL) (0) | 2024.04.15 |
---|---|
프로그래머스 - 이진 변환 반복하기 (파이썬) (0) | 2024.04.12 |
프로그래머스 - 둘만의 암호 (파이썬) (0) | 2024.04.11 |
프로그래머스 - 두 개 뽑아서 더하기 (파이썬) (0) | 2024.04.11 |
프로그래머스 - 수박수박수박수박수박수? (파이썬) (0) | 2024.04.08 |