https://school.programmers.co.kr/learn/courses/30/lessons/131130
function solution(cards) {
const [box, group] = [new Array(cards.length).fill(false), []];
let i = 0;
while (box.some((v) => !v)) {
let num = box.indexOf(false);
while (!box[num] && num < box.length) {
box[num] = true;
group[i] = ++group[i] || 1;
num = cards[num] - 1;
}
++i;
}
group.sort((a, b) => b - a);
return group.length > 1 ? group[0] * group[1] : 0;
}
'Coding Test > Programmers' 카테고리의 다른 글
[Programmers] Lv 2. 테이블 해시 함수 (0) | 2023.04.07 |
---|---|
[Programmers] Lv 2. 시소 짝꿍 (0) | 2023.04.06 |
[Programmers] Lv 2. 숫자 카드 나누기 (0) | 2023.04.04 |
[Programmers] Lv 2. 호텔 대실 (0) | 2023.04.03 |
[Programmers] (그리디 or 완전탐색) Lv 2. 마법의 엘리베이터 (0) | 2023.03.31 |
댓글