[Swift] 2021 KAKO BLIND RECUITMENT ν©μΉ νμ μκΈ
Problem
μ½λ©ν μ€νΈ μ°μ΅ - ν©μΉ νμ μκΈ
6 4 6 2 [[4, 1, 10], [3, 5, 24], [5, 6, 2], [3, 1, 41], [5, 1, 24], [4, 6, 50], [2, 4, 66], [2, 3, 22], [1, 6, 25]] 82 7 3 4 1 [[5, 7, 9], [4, 6, 4], [3, 6, 1], [3, 2, 3], [2, 1, 6]] 14 6 4 5 6 [[2,6,6], [6,3,7], [4,6,7], [6,5,11], [2,5,12], [5,3,20], [2,4
programmers.co.kr
Solution
ν΄λΉ λ¬Έμ λ Floyd Warshall μκ³ λ¦¬μ¦μΌλ‘ νμ΄μΌ νλ λ¬Έμ μ΄λ€.
1. λͺ¨λ μ§μ μ°κ²°νκΈ°
μ°μ λͺ¨λ μ§μ μ λν μ°κ²°μ μ μμμ κ°μ₯ ν° κ°μΌλ‘ λ§λ€μ΄μ€λ€.
κ·Έ λ€μ μ§μ μ€ μκΈ° μμ μΌλ‘ μ°κ²°λλ κ²½μ° 1μμ 1 2μμ 2 3μμ 3... λ±μ 0μΌλ‘ λ§λ€μ΄μ€λ€.
그리곀 μ£Όμ΄μ§ faresμμ μλ μ°κ²°μ λν κ°μ μΈν ν΄μ€λ€.
2. νλ‘μ΄λ μμ¬ μκ³ λ¦¬μ¦ μ¬μ©νκΈ°
nκ°μ μ§μ μ΄ μλ€λ©΄ μΆλ°ν μ§μ κ³Ό μ€κ°μ λ€λ¦¬λ μ§μ λμ°©νλ μ§μ μ΄λ κ² 3κ°λ₯Ό forλ¬ΈμΌλ‘ κ°κ° μ€νμμΌμ€λ€.
μ΄λ κ² νλ©΄ μ€κ°μ κ±°μ³κ°λ λͺ¨λ μ§μ μ λν κ°μ μ μ μλ€.
μ¬κΈ°μ μ£Όμν μ μ ν¨μ¨μ±μ μ΅λν νκΈ° μν΄μ μΆλ°κ³Ό μ€κ°μ λ€λ¦¬λ μ§μ μ΄ κ°λ€κ±°λ μΆλ°κ³Ό μ€κ°μ΄ μ μμ κ°μ₯ ν° κ°μ΄λ©΄
λμ°©μ§μ κΉμ§ μκ°λ λλ―λ‘ ν¨μ€ν΄μ€λ€.
3.κ°μ₯ μμ κ° μ°ΎκΈ°
μΆλ°μ§μ μμ μ΄λ μ§μ μ κ±°μ³μΌ aμ bμ λμ°©νλ κ°μ΄ κ°μ₯ μμμ§ μμλΈλ€.
(κ±°μ³μΌ νλ μ§μ μ€ μΆλ°μ§μ ,a,bκ° ν¬ν¨λμ΄ μμΌλ―λ‘ μ€κ°μ§μ μ μκ±°μΉλ κ²½μ°λ ν¬ν¨λμ΄μλ€.)
Source Code
P.S
μ²μμ λ€μ΅μ€νΈλΌ μκ³ λ¦¬μ¦μΌλ‘ νμ΄λ₯Ό νλλ° μ νμ±μ λͺ¨λ λ§μμ§λ§ ν¨μ¨μ±μμ λͺ¨λ μκ°μ΄κ³Όκ° λ΄λ€.
κ·Έλμ μ§λ¬ΈνκΈ°λ₯Ό λ΄λ΄€λλ° μ΅μ μ λ€μ΅μ€νΈλΌλ O( N * ElogN ), νλ‘μ΄λλ O( N3 )μ μκ°μ΄ μμλ μ μλ€κ³ μ°μ¬μμλ€.
μΈμ΄μ λ°λΌμ ν΅κ³Όλλ κ²½μ°λ μμ§λ§ κ·Έλ μ§ μμ κ²½μ° νλ‘μ΄λ μμ¬ μκ³ λ¦¬μ¦μΌλ‘ νκ±°λ λ€μ΅μ€νΈλΌλ‘ μ΅μ μ κ²½μ°λ₯Ό λ§λ€μ΄μ
νΈλ λ°©λ²μ΄ μμλλ° κ·Έλ₯ νλ‘μ΄λ μμ¬λ‘ κ°μνλ€.
νλ‘μ΄λ μμ¬μ΄ ν¨μ¬ κ°λ¨νκ³ μ½κ² ꡬνν μ μμλ€.
(λ€μ΅μ€νΈλΌλ₯Ό κ³μ ν¨μ¨μ μΌλ‘ νμ΄λ³΄λ €κ³ νλκΉ...μ μ νλ‘μ΄λ μμ¬ μκ³ λ¦¬μ¦κ³Ό λΉμ·ν΄μ§λ λλμ....λμ§..)