-
https://www.acmicpc.net/problem/1504
1504번: 특정한 최단 경로
첫째 줄에 정점의 개수 N과 간선의 개수 E가 주어진다. (2 ≤ N ≤ 800, 0 ≤ E ≤ 200,000) 둘째 줄부터 E개의 줄에 걸쳐서 세 개의 정수 a, b, c가 주어지는데, a번 정점에서 b번 정점까지 양방향 길이 존
www.acmicpc.net
https://github.com/JUNGSOONIL/JAVA/blob/main/BAEKJOON%201504
GitHub - JUNGSOONIL/JAVA: JAVA 소스 코드
JAVA 소스 코드. Contribute to JUNGSOONIL/JAVA development by creating an account on GitHub.
github.com
해당 문제는 1번 정점에서 N 번 정점까지 이동하는데 특정 두 정점을 꼭 지나야 한다.
처음에 문제를 잘못 이해해서 이상한 방식으로 풀었었고
이후 문제를 다시 보고 1 -> 첫 번째 정점 -> 두 번째 정점 -> N 과
1 -> 두 번째 정점 -> 첫 번째 정점 -> N에 대해
최소 이동거리를 구하는 방식으로 문제를 해결했다.
다익스트라를 이용해서 해결했으며, 정점 정보는 리스트를 배열 형식으로 선언하여 주었고,
또한 갈 점과 값에 대해서 클래스를 하나 선언해 주었다.
다익스트라를 할 때마다 이동 값을 저장하는 배열을 두고
해당 배열에 값을 저장하는 방식으로 문제를 해결하였다.
728x90'알고리즘 > Baekjoon' 카테고리의 다른 글
Baekjoon 16234 인구 이동 JAVA (0) 2021.11.16 Baekjoon 17396 백도어 JAVA (0) 2021.11.16 Baekjoon 14496 그대, 그머가 되어 JAVA (0) 2021.11.16 Baekjoon 2407 조합 JAVA (0) 2021.11.16 Baekjoon 1629 곱셈 JAVA (0) 2021.11.16 댓글