지난 풀이 참고
lost
와 reserve
두 배열에 중복되는 숫자를 제거한다.lost
의 원소 중 값이 reserve
의 원소와 1
차이나는 원소를 찾아서, lost
와 reserve
두 배열 모두에서 해당 원소를 삭제한다.i
혹은 j
를 1
씩 감소시킨다.function solution(n, lost, reserve) {
let answer = 0;
lost = lost.sort((a,b) => a-b);
reserve = reserve.sort((a,b) => a-b);
for(let i = 0; i < lost.length; i++) {
if(reserve.indexOf(lost[i]) !== -1) {
const lostNum = lost.splice(i,1);
const idx = reserve.indexOf(lostNum[0]);
if(idx !== -1) {
reserve.splice(idx,1);
i--;
}
}
}
for(let i = 0; i < lost.length; i++) {
for(let j = 0; j < reserve.length; j++) {
if(lost[i] === reserve[j] + 1 || lost[i] === reserve[j] - 1) {
lost.splice(i,1);
reserve.splice(j,1);
i--;
j--;
}
}
}
answer = n - lost.length;
return answer;
}