설계
로또 번호 중 일치하는 숫자의 개수 + 알아볼 수 없는 숫자의 개수 = 최대 일치 개수 라고 봐도 될것 같다. 당첨 번호도, 내가 입력하는 번호도 전부 중복이 허용되지 않기 때문이다. 입력한 로또 번호와 당첨 번호의 교집합의 원소 개수가 곧 일치하는 숫자의 개수일 것이고, 알아볼 수 없는 숫자의 개수는 0의 몇개있는지만 세어보면 된다.
파이썬 강좌 – 조건 표현식 (Conditional Expression) – 간단한 분기 나타내기 – Under The Pencil (elvanov.com)
조건 표현식을 이용해 간단히 코드를 작성했다.
코드
def solution(lottos, win_nums):
min = len(set(lottos) & set(win_nums))
max = min + lottos.count(0)
answer = [7-(max if max>0 else 1),7-(min if min>=2 else 1)]
return answer
'PS > 프로그래머스' 카테고리의 다른 글
소수 만들기 (lv1) (0) | 2022.07.03 |
---|---|
키패드 누르기 (lv1) (0) | 2022.07.02 |
숫자 문자열과 영단어 (lv1) (0) | 2022.07.01 |
신규 아이디 추천 (lv1) (0) | 2022.07.01 |
신고 결과 받기 (lv1) (0) | 2022.06.27 |