μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
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 |
- λμ κ³νλ²
- μμꡬνκΈ°
- λ¨Έμ§μνΈ
- λ€μ΄λλ―Ήνλ‘κ·Έλλ°
- LIS
- μν
- μ€λΈμ
- λ³ν©μ λ ¬
- DP
- νμ΄μ¬
- κ·Έλν
- ν°μ€ν 리μ±λ¦°μ§
- db
- νλ‘κ·Έλλ¨Έμ€
- ꡬν
- λ°μ΄ν°λ² μ΄μ€
- κΉμ΄μ°μ νμ
- BFS
- SQL
- μ λ ¬
- λ°±μ€
- 그리λ
- DFS
- μκ³ λ¦¬μ¦
- μ°μ μμν
- κ·Έλννμ
- λμ ν©
- μμνμ
- λλΉμ°μ νμ
- μλ£κ΅¬μ‘°
πππ°πΈ π£πΆπ΅ π΄π΅π¦π’π₯πΊ
[λ°±μ€] 1507λ²: κΆκΈν λ―ΌνΈ - C++ λ³Έλ¬Έ
λ¬Έμ
κ°νΈλ Nκ°μ λμλ‘ μ΄λ£¨μ΄μ§ λλΌμ μ΄κ³ μλ€. κ° λμλ Mκ°μ λλ‘λ‘ μ°κ²°λμ΄ μμΌλ©°, κ° λλ‘λ₯Ό μ§λ λ νμν μκ°μ΄ μ‘΄μ¬νλ€. λλ‘λ μ μ°κ²°λμ΄ μκΈ° λλ¬Έμ, λμ Aμμ Bλ‘ μ΄λν μ μλ κ²½μ°λ μ‘΄μ¬νμ§ μλλ€.
λμ Aμμ λμ Bλ‘ λ°λ‘ κ° μ μλ λλ‘κ° μκ±°λ, λ€λ₯Έ λμλ₯Ό κ±°μ³μ κ° μ μμ λ, λμ Aμμ Bλ₯Ό κ° μ μλ€κ³ νλ€.
κ°νΈλ λͺ¨λ μμ λμμ λν΄μ μ΅μ μ΄λ μκ°μ ꡬν΄λμλ€. λ―ΌνΈλ μ΄ νλ₯Ό λ³΄κ³ μλ λλ‘κ° λͺ κ° μλμ§λ₯Ό ꡬν΄λ³΄λ €κ³ νλ€.
μλ₯Ό λ€μ΄, μμ μ κ²½μ°μ λͺ¨λ λμ μ¬μ΄μ κ°νΈκ° ꡬν κ°μ κ°μ§λ λλ‘κ° μ‘΄μ¬νλ€κ³ ν΄λ λλ€. νμ§λ§, μ΄ λλ‘μ κ°μλ μ΅μκ°μ΄ μλλ€. μλ₯Ό λ€μ΄, λμ 1-2, 2-3, 1-4, 3-4, 4-5, 3-5λ₯Ό μ°κ²°νλ λλ‘λ§ μλ€κ³ κ°μ ν΄λ, κ°νΈκ° ꡬν λͺ¨λ μμ μ΅μκ°μ ꡬν μ μλ€. μ΄ κ²½μ° λλ‘μ κ°μλ 6κ°μ΄κ³ , λͺ¨λ λλ‘μ μκ°μ ν©μ 55μ΄λ€.
λͺ¨λ μμ λμ μ¬μ΄μ μ΅μ μ΄λ μκ°μ΄ μ£Όμ΄μ‘μ λ, μ΄ λλΌμ μ‘΄μ¬ν μ μλ λλ‘μ κ°μμ μ΅μκ°μΌ λ, λͺ¨λ λλ‘μ μκ°μ ν©μ ꡬνλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
첫째 μ€μ λμμ κ°μ N(1 ≤ N ≤ 20)μ΄ μ£Όμ΄μ§λ€. λμ§Έ μ€λΆν° Nκ°μ μ€μ κ°κ°μ λμ μ¬μ΄μ μ΄λνλλ° νμν μκ°μ΄ μ£Όμ΄μ§λ€. Aμμ Bλ‘ κ°λ μκ°κ³Ό Bμμ Aλ‘ κ°λ μκ°μ κ°λ€. λ, Aμ Bκ° κ°μ κ²½μ°μλ 0μ΄ μ£Όμ΄μ§κ³ , κ·Έ μΈμ κ²½μ°μ νμν μκ°μ 2500λ³΄λ€ μκ±°λ κ°μ μμ°μμ΄λ€.
μΆλ ₯
첫째 μ€μ λλ‘ κ°μκ° μ΅μμΌ λ, λͺ¨λ λλ‘μ μκ°μ ν©μ μΆλ ₯νλ€. λΆκ°λ₯ν κ²½μ°μλ -1μ μΆλ ₯νλ€.
μ΄μ νμλ νλ‘μ΄λ μμ¬ μκ³ λ¦¬μ¦ λ¬Έμ (11404λ²: νλ‘μ΄λ)λ₯Ό μμΌλ‘ μκ°νλ λ¬Έμ .
μ λ ₯μΌλ‘ μ£Όμ΄μ§ κ°μ΄ μ΄λ―Έ νλ‘μ΄λ-μμ¬ μκ³ λ¦¬μ¦μ μ μ©ν μνλΌκ³ μκ°νκ³ μ κ·Όνλ©΄ λλ€. λ°λ‘ κ° μ μλ κ²½λ‘κ° μλ λ°λ©΄, λ€λ₯Έ λμλ₯Ό κ±°μ³μ κ° μ μλ κ²½λ‘ μμ μ‘΄μ¬νκΈ° λλ¬Έμ iμμ j(λλ jμμ i)κΉμ§ μ΄λμκ° city[i][j]μ΄ iμμ k, kμμ jκΉμ§μ μ΄λμκ°μ ν©κ³Ό κ°λ€λ©΄ μ΄λ i β‘ k β‘ jλ‘ κ±°μ³μ κ°λ κ²½λ‘μ΄λ―λ‘ λλ‘μ ν¬ν¨νμ§ μλλ€. μ΄λ₯Ό norouteλΌλ bool λ°°μ΄μ ν΅ν΄ κ΄λ¦¬ν΄μ€λ€.
μ΄ λ, μμ μ λ ₯ 4 μ²λΌ i β‘ jλ‘μ μ΄λμκ°μ΄ i β‘ k β‘ jλ³΄λ€ ν΄ κ²½μ°λ λΆκ°λ₯νκΈ° λλ¬Έμ -1μ μΆλ ₯ν΄μ€λ€.
μ½λ
#include <cstdio>
#define MAX 21
int city[MAX][MAX];
bool noroute[MAX][MAX];
int main(void) {
int N;
scanf("%d", &N);
for(int i = 0; i < N; i++) {
for(int j = 0; j < N; j++) {
scanf("%d", &city[i][j]);
}
}
for(int k = 0; k < N; k++) {
for(int i = 0; i < N; i++) {
for(int j = 0; j < N; j++) {
if(city[i][j] > city[i][k] + city[k][j]) {
printf("-1\n");
return 0;
}
if(i != k && j != k && city[i][k] + city[k][j] == city[i][j])
noroute[i][j] = true;
}
}
}
int count = 0;
for(int i = 0; i < N; i++) {
for(int j = 0; j < N; j++) {
if(!noroute[i][j]) count += city[i][j];
}
}
printf("%d\n", count / 2);
return 0;
}
'μ½λ©ν μ€νΈ μ€λΉ > λ°±μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€] 2512λ²: μμ° - C++ (0) | 2022.02.03 |
---|---|
[λ°±μ€] 5639λ²: μ΄μ§ κ²μ νΈλ¦¬ - C++ (0) | 2022.01.24 |
[λ°±μ€] 11404λ²: νλ‘μ΄λ - C++ (0) | 2022.01.20 |
[λ°±μ€] 5567λ²: κ²°νΌμ - C++ (0) | 2022.01.19 |
[λ°±μ€] 1222λ²: νμ€ νλ‘κ·Έλλ° λν - C++ (0) | 2022.01.18 |