백준 11403 경로 찾기
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// 플로이드 와샬로 풀이
// 20분
 
#define _CRT_SECURE_NO_WARNINGS
#include <cstdio>
#include <algorithm>
using namespace std;
const int INF = 1000000000;
 
int main() {
    int n, mtx[100][100];
    scanf("%d"&n);
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            scanf("%d"&mtx[i][j]);
            if (mtx[i][j] == 0) mtx[i][j] = INF;
        }
    }
    for (int k = 0; k < n; k++)
        for (int i = 0; i < n; i++)
            for (int j = 0; j < n; j++)
                mtx[i][j] = min(mtx[i][j], mtx[i][k] + mtx[k][j]);
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            printf("%d ", mtx[i][j] == INF ? 0 : 1);
        }
        puts("");
    }
    return 0;
}
 
cs




플로이드 워셜 알고리즘을 사용하여 푼 11403 경로 찾기 문제


'Algorithm' 카테고리의 다른 글

백준 1149 RGB거리  (0) 2018.05.18
백준 1389 케빈 베이컨의 6단계 법칙  (0) 2018.05.17
백준 11404 플로이드  (0) 2018.05.17
백준 2468 안전 영역  (0) 2018.05.17
백준 11724 연결 요소의 개수  (0) 2018.05.17
더보기

댓글,

jayharvey

머신러닝/딥러닝 관련 글을 포스팅할 예정입니다 :)