[μ€μννΈ μκ³ λ¦¬μ¦] νλ‘κ·Έλλ¨Έμ€: κ°μ₯ ν° μ μ¬κ°ν μ°ΎκΈ°
λ¬Έμ
https://programmers.co.kr/learn/courses/30/lessons/12905
μ½λ©ν μ€νΈ μ°μ΅ - κ°μ₯ ν° μ μ¬κ°ν μ°ΎκΈ°
[[0,1,1,1],[1,1,1,1],[1,1,1,1],[0,0,1,0]] 9
programmers.co.kr
1μ 0λ‘ μ±μμ§ ν(board)κ° μμ΅λλ€. ν 1μΉΈμ 1 x 1 μ μ μ¬κ°νμΌλ‘ μ΄λ£¨μ΄μ Έ μμ΅λλ€. νμμ 1λ‘ μ΄λ£¨μ΄μ§ κ°μ₯ ν° μ μ¬κ°νμ μ°Ύμ λμ΄λ₯Ό return νλ solution ν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ. (λ¨, μ μ¬κ°νμ΄λ μΆμ ννν μ μ¬κ°νμ λ§ν©λλ€.)
μλ₯Ό λ€μ΄
0 | 1 | 1 | 1 |
1 | 1 | 1 | 1 |
1 | 1 | 1 | 1 |
0 | 0 | 1 | 0 |
κ° μλ€λ©΄ κ°μ₯ ν° μ μ¬κ°νμ
0 | 1 | 1 | 1 |
1 | 1 | 1 | 1 |
1 | 1 | 1 | 1 |
0 | 0 | 1 | 0 |
κ° λλ©° λμ΄λ 9κ° λλ―λ‘ 9λ₯Ό λ°νν΄ μ£Όλ©΄ λ©λλ€.
νμ΄
λ€μ΄λλ―Ή νλ‘κ·Έλλ°μΌλ‘ ν΄κ²°ν©λλ€.
dp λ°°μ΄μ μ΄κΈ°μλ μ£Όμ΄μ§ λ°°μ΄κ³Ό μΌμΉνκ³ dp λ°°μ΄μλ ν΄λΉ μμΉλ₯Ό κΈ°μ€μΌλ‘ λ§λ€ μ μλ μ μ¬κ°νμ μ΅λ κ°μλ₯Ό μλ―Έν©λλ€. μ μ¬κ°νμ κ°μλ₯Ό ꡬνκΈ° μν΄μ λ€μκ³Ό κ°μ μκ³ λ¦¬μ¦μΌλ‘ κ°μλ₯Ό νλ³ν©λλ€.
- board λ°°μ΄μ μννλ©΄μ κ° μμΉλ₯Ό νμν©λλ€.
- νμ¬ μμΉμ κ°μ΄ 0μ΄λΌλ©΄ μ무κ²λ νμ§ μκ³ κ±΄λλλλ€.
- νμ¬ μμΉμ κ°μ΄ 1μ΄λΌλ©΄ μ΅μ ν κ°μ μ μ¬κ°νμ λ§λ€ μ μμ΅λλ€.
- νμ¬ μμΉμ κ°μ΄ 1μΌ λ, λ§λ€ μ μλ μ΅λ μ μ¬κ°νμ νμΈνκΈ° μν΄μ dp λ°°μ΄μμ μμ μ μ’μΈ‘, μ°μΈ‘, μ’μΈ‘ λκ°μ λ°©ν₯μ κ°μ νμΈν©λλ€. board λ°°μ΄μ κ° νμ μ΄λνλ©΄μ μννκΈ° λλ¬Έμ dp λ°°μ΄μ μ’μΈ‘, μ°μΈ‘, μ’μΈ‘ λκ°μ μλ ν΄λΉ μμΉλ‘λΆν° λ§λ€ μ μλ μ΅λ μ μ¬κ°νμ κ°μκ° μ μ₯λμ΄ μμ΅λλ€.
- λ°λΌμ νμ¬ μμΉμμ μ»μ μ μλ μ μ¬κ°νμ μ΅λ κ°μλ μ’μΈ‘, μ°μΈ‘, μ’μΈ‘ λκ°μ μ μ μ₯λ μ μ¬κ°νμ κ°μ μ€ μ΅μκ°μ 1μ λν κ°μμ λλ€. μ’μΈ‘, μ°μΈ‘, μ’μΈ‘ λκ°μ λ°©ν₯μ΄ λͺ¨λ 1λ‘ μ±μμ Έ μμ΄μΌ μ μ¬κ°νμ λ§λ€ μ μκΈ° λλ¬Έμ λλ€.