플로이드

    11404번: 플로이드

    11404번: 플로이드사용 언어: C++ 풀이모든 지점에서 다른 모든 지점으로의 최솟값을 알아야하므로 플로이드 워셜 알고리즘으로 풀어야함.2차원 배열을 자기 자신은 0, 그 외에는 0x3f (매우 큰 수)로 초기화하고, s도시에서 e도시로 방향이 있고 가중치 w인 AddEdge(s, e, w)로 2차원 배열에 값들 저장.Run()은 그냥 모든 점들의 최솟값을 확인하는 함수. G[i][j]와 G[i][k] + G[k][j] 중 최솟값을 계속 업데이트. #include using namespace std;int n, m;int G[101][101];void Init(){ memset(G, 0x3f, sizeof G); // 자기 자신 도시는 0 for (int i = 1; i e, 가중치 ..