Binary Journey

[프로그래머스] 로또의 최고 순위와 최저 순위 본문

프로그래머스/level 1

[프로그래머스] 로또의 최고 순위와 최저 순위

binaryJournalist 2021. 9. 1. 18:17
반응형

 

출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges

 

 

 

풀다 보면 아마 계속 통과되지 않는 테스트 케이스가 나올텐데 그것은 모든 숫자가 꽝일 때인 테스트 케이스이다.

모든 수가 0일 때만이 아니라 다 틀렸을 때 완전 꽝일 때까지 고려해야 한다.

 

 

** Javascript

 

 

function solution(lottos, win_nums) {
    const numbers = lottos.filter(num => win_nums.includes(num) || num === 0);
    const maxRank = numbers.every(num => !win_nums.includes(num) && num > 0) ? 6 : 7 - numbers.length;
    const minRank = (numbers.every(num => num === 0)) ? 6 : 7 - numbers.filter(num => num > 0).length;
    return [maxRank, minRank];
}

 

 

 

** Python

 

def solution(lottos, win_nums):
    new_lottos = [ l for l in lottos if l in win_nums]
    zeros = lottos.count(0)
    maximum = min(6, 7 - (len(new_lottos) + zeros))
    minimum = min(6, 7 - len(new_lottos))
    return [maximum, minimum]
반응형