다익스트라다

문제https://www.acmicpc.net/problem/5972 풀이다익스트라다와 BFS 알고리즘을 이용한 문제이며, 필자는 큐를 이용한 풀이를 진행했다. 1번부터 시작하며 큐에 시작하는 위치를 저장하고 순회를 시작한다. 순회하며 각 지점에 도달하기 까지의 최소 비용을 측정한다. 최단 거리의 경우 st 지점부터 ed 지점까지 소요되는 비용을 더하며 최소 비용을 구한다. 코드const input = require('fs') .readFileSync(process.platform === 'linux' ? '/dev/stdin' : __dirname + '/example.txt') .toString().trim().split('\n').map(e => e);const [n, m] = input.shi..
문제https://school.programmers.co.kr/learn/courses/30/lessons/ 풀이해당 문제는 BFS를 이용한 다익스트라다 문제이며, 처음 문제를 풀때는 주어지는 sources별로 마지막 도착지인 destination까지의 거리를 측정했었다. 하지만 이렇게 풀게 되면 시간 초과가 발생한다.function solution(n, roads, sources, destination) { const answer = []; const road = Array.from({length: n + 1}, () => []); const level = Array.from({length: n + 1}, () => Infinity); for(let i = 0; i fal..
58청춘
'다익스트라다' 태그의 글 목록