소프트웨어 공학 시험 공부가 하기 싫어서 PL 공부하다가 마냥 놀기에는 죄책감이 느껴져서 알고리즘을 풀어봤다,,,
이번 문제는 체육복!! 뭔가 성의 없어 보이는 문제 이름이다 ㅋㅋㅋ.
function solution(n, lost, reserve) {
var answer = 0;
answer = n - lost.length;
for(let i = 0; i < lost.length; i++) {
for(let j = 0; j < reserve.length; j++) {
if(lost[i] === reserve[j]) {
answer++;
lost.splice(i, 1);
reserve.splice(j, 1);
j--;
i--;
}
}
}
for(let i = 0; i < lost.length; i++) {
for(let j = 0; j < reserve.length; j++) {
if(reserve[j] - lost[i] === 1 || reserve[j] - lost[i] === -1) {
answer++;
reserve.splice(j,1);
break;
}
}
}
return answer;
}
처음에 여유분을 챙기면서 분실한 사람 처리를 할 때, 배열에서 제거만하고 인덱스 조절을 해주지 않아서 마지막 테스트 케이스를 통과하지 못했다. 더 꼼꼼하게 해야겠다~!~!~!~!
함수형 프로그래밍 형식으로 짜는 연습을 해야겠다.
C++이나 Python을 사용할지 고민중이다. (나중에 코테를 위해서)