μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
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 |
- DFS
- DP
- μν
- 그리λ
- μ€λΈμ
- κ·Έλννμ
- νμ΄μ¬
- LIS
- db
- κΉμ΄μ°μ νμ
- λμ ν©
- SQL
- λ°μ΄ν°λ² μ΄μ€
- μκ³ λ¦¬μ¦
- λ³ν©μ λ ¬
- λμ κ³νλ²
- skala
- ꡬν
- λλΉμ°μ νμ
- λ€μ΄λλ―Ήνλ‘κ·Έλλ°
- μμνμ
- νλ‘κ·Έλλ¨Έμ€
- BFS
- λ°±μ€
- skala1κΈ°
- SK
- μ λ ¬
- λ¨Έμ§μνΈ
- κ·Έλν
- ν°μ€ν 리μ±λ¦°μ§
- Today
- Total
πππ°πΈ π£πΆπ΅ π΄π΅π¦π’π₯πΊ
[λ°±μ€] 11404λ²: νλ‘μ΄λ - C++ λ³Έλ¬Έ
λ¬Έμ
n(2 β€ n β€ 100)κ°μ λμκ° μλ€. κ·Έλ¦¬κ³ ν λμμμ μΆλ°νμ¬ λ€λ₯Έ λμμ λμ°©νλ m(1 β€ m β€ 100,000)κ°μ λ²μ€κ° μλ€. κ° λ²μ€λ ν λ² μ¬μ©ν λ νμν λΉμ©μ΄ μλ€.
λͺ¨λ λμμ μ (A, B)μ λν΄μ λμ Aμμ Bλ‘ κ°λλ° νμν λΉμ©μ μ΅μκ°μ ꡬνλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
첫째 μ€μ λμμ κ°μ nμ΄ μ£Όμ΄μ§κ³ λμ§Έ μ€μλ λ²μ€μ κ°μ mμ΄ μ£Όμ΄μ§λ€. κ·Έλ¦¬κ³ μ μ§Έ μ€λΆν° m+2μ€κΉμ§ λ€μκ³Ό κ°μ λ²μ€μ μ λ³΄κ° μ£Όμ΄μ§λ€. λ¨Όμ μ²μμλ κ·Έ λ²μ€μ μΆλ° λμμ λ²νΈκ° μ£Όμ΄μ§λ€. λ²μ€μ μ 보λ λ²μ€μ μμ λμ a, λμ°© λμ b, ν λ² νλλ° νμν λΉμ© cλ‘ μ΄λ£¨μ΄μ Έ μλ€. μμ λμμ λμ°© λμκ° κ°μ κ²½μ°λ μλ€. λΉμ©μ 100,000λ³΄λ€ μκ±°λ κ°μ μμ°μμ΄λ€.
μμ λμμ λμ°© λμλ₯Ό μ°κ²°νλ λ Έμ μ νλκ° μλ μ μλ€.
μΆλ ₯
nκ°μ μ€μ μΆλ ₯ν΄μΌ νλ€. iλ²μ§Έ μ€μ μΆλ ₯νλ jλ²μ§Έ μ«μλ λμ iμμ jλ‘ κ°λλ° νμν μ΅μ λΉμ©μ΄λ€. λ§μ½, iμμ jλ‘ κ° μ μλ κ²½μ°μλ κ·Έ μ리μ 0μ μΆλ ₯νλ€.
λͺ¨λ μ΅λ¨ κ²½λ‘λ₯Ό ꡬνλ νλ‘μ΄λ μμ¬ μκ³ λ¦¬μ¦μΌλ‘ νΈλ λ¬Έμ .
무νλμΈ INFκ°μ λ무 μμ κ°μΌλ‘ μ‘κ² λλ©΄ κ²½λ‘κ° μμ΄ 0μΌλ‘ μΆλ ₯ν΄μΌ νλ κ³³μΈμ§ μ λλ‘ νλ³ν μ μμΌλ―λ‘ 100,000 * 100 = 10,000,000 λ³΄λ€ ν° κ°μΌλ‘ μ‘μμ€μΌ νλ€.
μ½λ
#include <cstdio>
#define MAX 101
#define INF 10000001
using namespace std;
int route[MAX][MAX];
int N, K;
int main(void) {
scanf("%d %d", &N, &K);
for(int i = 0; i < MAX; i++) {
for(int j = 0; j < MAX; j++) {
route[i][j] = INF;
}
}
for(int i = 0; i < K; i++) {
int a, b, c;
scanf("%d %d %d", &a, &b, &c);
if(route[a][b] > c) {
route[a][b] = c;
}
}
for(int k = 1; k <= N; k++) {
for(int i = 1; i <= N; i++) {
for(int j = 1; j <= N; j++) {
if(route[i][k] + route[k][j] < route[i][j]) {
route[i][j] = route[i][k] + route[k][j];
}
}
}
}
for(int i = 1; i <= N; i++) {
for(int j = 1; j <= N; j++) {
if(i == j || route[i][j] >= INF) printf("0 ");
else printf("%d ", route[i][j]);
}
printf("\n");
}
return 0;
}
'μ½λ©ν μ€νΈ μ€λΉ > λ°±μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€] 5639λ²: μ΄μ§ κ²μ νΈλ¦¬ - C++ (0) | 2022.01.24 |
---|---|
[λ°±μ€] 1507λ²: κΆκΈν λ―ΌνΈ - C++ (0) | 2022.01.21 |
[λ°±μ€] 5567λ²: κ²°νΌμ - C++ (0) | 2022.01.19 |
[λ°±μ€] 1222λ²: νμ€ νλ‘κ·Έλλ° λν - C++ (0) | 2022.01.18 |
[λ°±μ€] 3024λ²: λ§λΌν€ ν±νν - C++ (0) | 2022.01.17 |