728x90
import java.io.*;
public class BJ11403 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
int[][] arr = new int[N][N];
// 입력을 배열로 저장
for (int i = 0; i < N; i++) {
String[] line = br.readLine().split(" "); // 공백을 기준으로 분리
for (int j = 0; j < N; j++) {
arr[i][j] = Integer.parseInt(line[j]); // 배열에 숫자 저장
}
}
// 플로이드-워셜 알고리즘
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] == 1 && arr[k][j] == 1) {
arr[i][j] = 1;
}
}
}
}
StringBuilder sb = new StringBuilder();
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
sb.append(arr[i][j]).append(" ");
}
sb.append("\n");
}
System.out.print(sb);
}
}
가장 기본적은 플로이드 워셜 알고리즘이라는데 벌써부터 버겁긴 하다... 알고리즘을 언어로 구현하는 것에 대한 노력을 열심히 정진해야겠다
728x90
'백준' 카테고리의 다른 글
백준 11054 - java (1) | 2024.11.15 |
---|---|
백준 2110 - Java (0) | 2024.11.14 |
백준 3085 - Java (0) | 2024.11.12 |
백준 2309 - Java (0) | 2024.11.11 |
백준1475 - Java (0) | 2024.11.10 |