๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ฝ”๋”ฉํ…Œ์ŠคํŠธ/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

[Javascript] ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜ (42576)

๋ฌธ์ œ๋งํฌ

์ ‘๊ทผ ๋ฐฉ๋ฒ•

์ฒ˜์Œ์—๋Š” ๋ชจ๋“  ํ†ต๊ณผ์ž(completion)๋ฅผ ์ˆœํšŒํ•˜์—ฌ ์ „์ฒด ์ฐธ๊ฐ€์ž(participant)์—์„œ ์ œ์™ธํ•˜์—ฌ
๋งˆ์ง€๋ง‰ ๋‚จ์€ ์ฐธ๊ฐ€์ž๋ฅผ ์ •๋‹ต์œผ๋กœ ๊ตฌํ–ˆ๋‹ค.

ํ•˜์ง€๋งŒ ํšจ์œจ์„ฑ์—์„œ ๋ฏธํ†ต๊ณผ๊ฐ€ ๋˜์—ˆ๋Š”๋ฐ, ๋ฐฐ์—ด ์ˆœํšŒ๋ฅผ forEach, indexOf, splice ์„ธ๋ฒˆ์„ ์ง„ํ–‰ํ•ด์„œ ๊ทธ๋Ÿฐ๊ฑฐ๊ฐ™๋‹ค.

๋‹ค์Œ ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” completion, participant๋ฅผ ์ •๋ ฌํ•ด๋ณด๋‹ˆ
๋ฏธํ†ต๊ณผ์ž ํ•œ๋ช… ๋นผ๊ณ ๋Š” ๊ฐ™์€ ๋ฐฐ์—ด์ด ๋งŒ๋“ค์–ด์กŒ๋‹ค.

๋•Œ๋ฌธ์— ๋‘˜์„ ๋น„๊ตํ•ด์„œ ๋‘˜์˜ ์š”์†Œ๊ฐ€ ๋‹ฌ๋ผ์งˆ๋•Œ answer์— ๋Œ€์ž…ํ•˜๊ณ  break; ํ•˜์—ฌ ์ •๋‹ต์„ ๊ตฌํ–ˆ๋‹ค.
(์ฒ˜์Œ์—๋Š” break;๋ฅผ ํ•˜์ง€์•Š์•„ ํ†ต๊ณผํ•˜์ง€ ๋ชปํ–ˆ์Œ)

 

ํ‹€๋ฆฐ ํ’€์ด (ํšจ์œจ์„ฑ ํ…Œ์ŠคํŠธ ๋ฏธํ†ต๊ณผ)

function solution(participant, completion) {
    
    completion.forEach((runner)=> {
        participantIdx = participant.indexOf(runner)
        participant.splice(participantIdx,1)
    })
    
    return participant.join("");
}

๋งž์€ ํ’€์ด

function solution(participant, completion) {
    var answer = "";
    
    participant.sort();
    completion.sort();

    for(let i = 0; i < participant.length; i++){
      if(participant[i] !== completion[i]){
        answer = participant[i];
          break;
      } 
    }
    
    return answer;
}