RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
R01397

우주 정거장 연결망

Gold V 골드 V
난이도
2s
시간 제한
256MB
메모리 제한
0
맞았습니다!!
0
제출 수
0.0%
정답률
레이팅

의견: 0

설명

은하계에 \(N\)개의 우주 정거장이 있고, \(M\)개의 양방향 웜홀이 두 정거장을 연결하고 있다. 각 웜홀을 통과하는 데 걸리는 시간은 양의 정수로 주어진다. 같은 두 정거장을 잇는 웜홀이 여러 개 있을 수 있다.

모든 정거장 쌍 \((i, j)\) 사이의 최소 이동 시간 행렬을 출력하여라. 도달할 수 없는 쌍은 \(-1\)로 출력한다.

제약
  • \(1 \le N \le 100\)
  • \(0 \le M \le \frac{N(N-1)}{2}\)
  • \(1 \le u, v \le N\), \(u \ne v\)
  • \(1 \le w \le 10^9\)
입력 형식

첫째 줄에 정거장의 수 \(N\)과 웜홀의 수 \(M\)이 주어진다.

다음 \(M\)개의 줄에 웜홀의 양 끝 정거장 번호 \(u\), \(v\)와 통과 시간 \(w\)가 공백으로 구분되어 주어진다.

출력 형식

\(N\)개의 줄에 걸쳐 최소 이동 시간 행렬을 출력한다. \(i\)번째 줄의 \(j\)번째 수는 정거장 \(i\)에서 \(j\)까지의 최소 이동 시간이다. 도달 불가능하면 \(-1\)을 출력한다.

예제 1
입력
4 4
1 2 3
2 3 2
3 4 5
1 4 100
출력
0 3 5 10
3 0 2 7
5 2 0 5
10 7 5 0
설명

정거장 \(1\)에서 \(4\)까지 직접 가면 거리 \(100\)이지만, \(1\to2\to3\to4\) 경로는 \(3+2+5=10\)으로 더 짧다. 도달할 수 없는 쌍은 \(-1\)로 출력한다.

예제 2
입력
3 2
1 2 5
2 3 3
출력
0 5 8
5 0 3
8 3 0
설명

정거장 \(1\to3\)\(5+3=8\). 행렬 대각선은 모두 \(0\)이다.

힌트

막혔나요? 코인으로 단계별 힌트를 잠금 해제하세요 — 첫 힌트는 가벼운 방향 제시, 뒤로 갈수록 더 많이 알려 줍니다. 문제를 풀면 모든 힌트가 무료로 공개됩니다.

문제 정보

riseoj 작성

출처 Original

평가 및 의견

우주 정거장 연결망

개요
출제자 난이도 Gold V 골드 V 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

우주 정거장 연결망

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8