Programmers [Programmers] 네트워크 문제 - (javascript) - 728x90 문제 이름 : 네트워크 <<< 문제 내용 >>> function solution(n, c) { var answer = 0; let dic = Array.from(Array(n), () => new Array(0)); for(let i=0; i<n; i++){ for(let j=i+1; j<n; j++){ if(c[i][j] === 1){ dic[i].push(j); dic[j].push(i); } } } let visited = new Array(n).fill(false); const bfs = (idx) => { let queue = [idx]; visited[idx] = true; while(queue.length){ idx = queue.shift(); while(dic[idx].length){ let temp = dic[idx].shift(); if(!visited[temp]){ queue.push(temp); visited[temp]=true; } } } } for(let i=0; i<n; i++){ if(!visited[i]){ bfs(i); answer++; } } return answer; } 1. graph에서 bfs를 사용한다. 2. 방문되지 않은 노드만 bfs를 실행한다. 3. 그때 갯수를 올려주면 끝 도움이 되셨다면 공감 부탁드립니다. 공유하기 URL 복사카카오톡 공유페이스북 공유엑스 공유 게시글 관리 구독하기MoveRoad's Factory 저작자표시 Contents 당신이 좋아할만한 콘텐츠 [Programmers] 피로도 문제 - (javascript) 2022.04.21 [Programmers] 같은 숫자는 싫어 문제 - (javascript) 2022.02.25 [Programmers] 소수 만들기 문제 - (javascript) 2022.02.13 [Programmers] 소수 찾기 문제 - (javascript) 2022.02.12 댓글 0 + 이전 댓글 더보기