미해결
자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
안녕하세요. 코드 한번 검토 부탁드려도 될가요?
function solution(arr) {
let answer = [];
const firstArr = arr[0];
for (let i = 0; i < firstArr.length - 1; i++) {
for (let j = i + 1; j < firstArr.length; j++) {
answer.push([firstArr[i], firstArr[j]]);
}
}
for (let i = 1; i < arr.length; i++) {
let list = arr[i];
for (let j = 0; j < answer.length; j++) {
let first = answer[j][0];
let second = answer[j][1];
if (list.indexOf(first) > list.indexOf(second)) {
answer.splice(j, 1);
}
}
}
return answer.length;
}
첫 번째 배열에서 등수로 짝을 만들 수 있는 경우를 모두 구한 후, 두 번째 반복문부터 indexOf를 통해 순서가 맞지 않는 짝을 제거해나가는 로직입니다.