코딩테스트 문제풀이/프로그래머스

[프로그래머스] 고득점 Kit 그래프

itaeiou 2022. 3. 16. 17:12
반응형

49189 가장 먼 노드

https://programmers.co.kr/learn/courses/30/lessons/49189

 

코딩테스트 연습 - 가장 먼 노드

6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3

programmers.co.kr

 

20220316 javascript 풀이

function solution(n, edge) {
    let answer = 0;
    let check = new Array(n+1).fill(20000, 1);
    let queue = new Array();
    
    queue.push(1);
    check[1] = 0;
    while(queue.length > 0) {
        let start = queue.shift();
        edge.forEach(v => {
            if(v[0] === start || v[1] === start) {
                let end = start === v[0] ? v[1] : v[0];
                if(check[start]+1 < check[end]) {
                    check[end] = check[start]+1;
                    queue.push(end);
                }
            }
        })
    }
    
    check.sort((a,b) => b-a);
    check.forEach(v => {if(check[0] === v) answer++;})
    
    return answer;
}
반응형