🗣 마라톤에 참여한 선수들 목록을 담은 배열 participant
와 완주 명담이 담긴 배열 completion
을 입력 받아, 완주하지 못한 선수의 이름을 문자열 형태로 반환하는 함수를 구현해야 합니다.
🗣 participant
에 속하지만, completion
에 속하지 않은 문자열 1개를 찾아야 합니다.
function solution(participant, completion) {
// 반환할 문자열을 담을 변수 answer 선언 및 빈 배열 할당
let answer = '';
// 각 배열을 정렬
participant.sort();
completion.sort();
for(let i = 0; i < participant.length; i++){
if(participant[i] !== completion[i]) {
answer = participant[i];
return answer;
}
}
}
마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다.
🗣 시간 복잡도를 고려해야 합니다. 입력 받은 배열을 정렬하여, 시간 복잡도를 줄일 수 있습니다.
참가자 중에는 동명이인이 있을 수 있습니다.
🗣 정렬한 두 배열을 같은 index끼리 비교하여, 같지 않은 요소가 있을 경우, 그 요소가 정답입니다.
🗣 return문을 함수 맨 마지막에 위치시키면, for문 안에서 answer가 계속 바뀔 수 있습니다. 정답이 나오면 바로 리턴문으로 처리해줍니다.
function solution(participant, completion) {
// 반환할 문자열을 담을 변수 answer 선언 및 빈 배열 할당
let answer = '';
// 각 배열을 정렬
participant.sort();
completion.sort();
for(let i = 0; i < participant.length; i++){
if(participant[i] !== completion[i]) {
answer = participant[i];
}
}
return answer;
}
function solution(participant, completion) {
// 반환할 문자열을 담을 변수 answer 선언 및 빈 배열 할당
let answer = '';
// 각 배열을 정렬
participant.sort();
completion.sort();
for(let i = 0; i < participant.length; i++){
if(participant[i] !== completion[i]) {
answer = participant[i];
return answer;
}
}
}