Skip to content

Commit 1d8532b

Browse files
authored
Merge pull request #1052 from AlgorithmWithGod/JHLEE325
[20251006] BOJ / G4 / 운동 / 이준희
2 parents 28c33b2 + 4ec691e commit 1d8532b

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
```java
2+
import java.io.*;
3+
import java.util.*;
4+
5+
public class Main {
6+
7+
static final int INF = 987654321;
8+
9+
public static void main(String[] args) throws IOException {
10+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
11+
StringTokenizer st = new StringTokenizer(br.readLine());
12+
13+
int v = Integer.parseInt(st.nextToken());
14+
int e = Integer.parseInt(st.nextToken());
15+
16+
int[][] map = new int[v][v];
17+
18+
for (int i = 0; i < v; i++) {
19+
Arrays.fill(map[i], INF);
20+
}
21+
22+
for (int i = 0; i < e; i++) {
23+
st = new StringTokenizer(br.readLine());
24+
int s = Integer.parseInt(st.nextToken()) - 1;
25+
int d = Integer.parseInt(st.nextToken()) - 1;
26+
int c = Integer.parseInt(st.nextToken());
27+
28+
map[s][d] = c;
29+
}
30+
31+
for (int k = 0; k < v; k++) {
32+
for (int i = 0; i < v; i++) {
33+
for (int j = 0; j < v; j++) {
34+
map[i][j] = Math.min(map[i][j], map[i][k] + map[k][j]);
35+
}
36+
}
37+
}
38+
int res = INF;
39+
for (int i = 0; i < v; i++) {
40+
for (int j = 0; j < v; j++) {
41+
res = Math.min(res, map[i][j] + map[j][i]);
42+
}
43+
}
44+
45+
if (res == INF) {
46+
System.out.println(-1);
47+
} else {
48+
System.out.println(res);
49+
}
50+
}
51+
}
52+
```

0 commit comments

Comments
 (0)