function solution(n, lost, reserve) {
// 여벌을 갖고온 사람과 잃어버린 사람이 정렬되어있다는 보장이 없으므로 정렬하고 시작
reserve.sort((a, b) => a - b);
lost.sort((a, b) => a - b);
var reserve_copy = [];
for(var i = 0; i < reserve.length; i++) {
// 여분 갖고온 사람이 분실했다면
if(lost.includes(reserve[i])){
lost.splice(lost.indexOf(reserve[i]), 1);
// reserve copy에 체육복 2벌 있는 사람체크
reserve_copy.push(reserve.filter((element) => element === reserve[i])[0]);
}
}
// 여벌 갖고왔는데 하나 잃어버린 사람 reserve에서 삭제
reserve = reserve.filter(element => !reserve_copy.includes(element))
for(var i = 0; i < reserve.length; i++) {
if( lost.includes(reserve[i]-1)){
// lost안에 reserve[i]+1와 같은 요소가 있으면
lost.splice(lost.indexOf(reserve[i]-1), 1)
}
else if( lost.includes(reserve[i]+1) ){
lost.splice(lost.indexOf(reserve[i]+1), 1)
}
}
return n - lost.length;
}
console.log( solution( 24, [12, 13, 16, 17, 19, 20, 21, 22], [1,22, 16, 18, 9, 10]) )
// 17명
1단계 코테 몇 문제 안남았다...ㅠ