코드와이
[BAEKJOON] 11403. 경로 찾기 본문
플로이드 와샬
문제링크
11403번: 경로 찾기
가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램을 작성하시오.
www.acmicpc.net
package acmicpc.Silver1;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class 경로_찾기 {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
int n = Integer.parseInt(br.readLine());
int[][] arr = new int[n][n];
for(int i = 0 ; i < n ; i++) {
st = new StringTokenizer(br.readLine());
for(int j = 0 ; j < n ; j++) {
int x = Integer.parseInt(st.nextToken());
if(x == 0) arr[i][j] = 10;
else arr[i][j] = x;
}
}
for(int k = 0 ; k < n ; k++) {
for(int i = 0 ; i < n ; i++) {
for(int j = 0 ; j < n ; j++) {
if(arr[i][k] + arr[k][j] < arr[i][j]) arr[i][j] = 1;
}
}
}
for(int i = 0 ; i < n ; i++) {
for(int j = 0 ; j < n ; j++) {
System.out.print(arr[i][j] >= 10 ? 0 + " " : 1 + " ");
}
System.out.println();
}
}
}
'acmicpc' 카테고리의 다른 글
[BAEKJOON] 1904. 01타일 (0) | 2021.04.24 |
---|---|
[BAEKJOON] 2623. 음악프로그램 (0) | 2021.04.23 |
[BAEKJOON] 11404. 플로이드 (0) | 2021.04.22 |
[BAEKJOON] 15683. 감시 (0) | 2021.04.21 |
[BAEKJOON] 16985. Maaaaaaaaaze (0) | 2021.04.21 |