프로그래머스 Level 1 - 완주하지 못한 선수 - Map

크롱·2023년 11월 23일
0

코딩테스트

목록 보기
52/61

내 풀이

코린이의 정석 그자체로 풀음

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


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

다른 풀이

효율성을 더 고려해서 Map 으로 풀은 다른사람풀이

function solution(participant, completion) {
    const map = new Map();

    for(let i = 0; i < participant.length; i++) {
        let a = participant[i], 
            b = completion[i];

        map.set(a, (map.get(a) || 0) + 1);
        map.set(b, (map.get(b) || 0) - 1);
    }
  console.log(map)

    for(let [k, v] of map) {
        if(v > 0) return k;
    }

    return 'nothing';
}

입출력예

console.log(map)하면 이렇게뜸
completion에 vinko가 없으므로, -1을 못함. 그래서 1로 유지..!

Map

https://velog.io/@kurong/%ED%94%84%EB%A1%A0%ED%8A%B8%EC%97%94%EB%93%9C-%EC%8A%A4%EC%BF%A8-5%EA%B8%B0-TIL-4%EC%9B%94-12%EC%9D%BC-%EC%83%9D%EC%84%B1%EC%9E%90-%ED%95%A8%EC%88%98-%EC%BD%9C%EB%B0%B1%ED%95%A8%EC%88%98-map%EA%B3%BC-set#-map

profile
👩‍💻안녕하세요🌞

0개의 댓글