프로그래머스/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]
반응형