λ¬Έμ
λ°±μ€ μ¨λΌμΈ μ μ§ - 3109λ²
νμ΄ κ³Όμ
νμ΄νλ₯Ό μ°κ²°ν μ μλ μΈ κ°μ§ λ°©λ²μ μ΄μ©ν΄μ κ°μ₯ λ§μ μ°κ²° λ°©λ²μ μ°Ύλ λ¬Έμ μ
λλ€.λ°±νΈλνΉ
μ μ΄μ©ν΄μ λͺ¨λ κ²½μ°λ₯Ό μ°Ύμ μ μλλ° λ¬Έμ λ μ€λ³΅λ νμμ΄ λ§μ΄ μ‘΄μ¬νλ€λ κ²μ
λλ€.
μ¬κΈ°μ μ»μ μ μλ μμ΄λμ΄λ λ°±νΈλνΉ
μ ν΅ν΄ ν μ§μ μμ λͺ©ν μ§μ μ λλ¬νλ λ°©λΉμ΄ μλμ§ νλ¨νκ³ μλ€λ κ²μ
λλ€.
λ°λΌμ νμ¬ μ§μ μμ λͺ©ν μ§μ μ λ°©λ¬Έμ΄ κ°λ₯νμ§ μλλΌλ
μ΄ μ§μ μ λ€μ λ―Έλ°©λ¬Έ μνλ‘ λ°κΏμ£Όλ κ²μ΄ μλλΌ κ·Έλ₯ λ°©λ¬Έ μ²λ¦¬λ‘ λ¨κ²¨λλ λ©λλ€.
(λͺ©ν μ§μ μ λλ¬ κ°λ₯ν κ²½μ°λ μ΄ κ²½λ‘μ νμ΄νλ₯Ό λμΌνκΈ° λλ¬Έμ λ°©λ¬Έ μ²λ¦¬λ₯Ό ν©λλ€.)
μλνλ©΄ μ΄νμ ν΄λΉ μ§μ μ λ€μ λ°©λ¬ΈνλλΌλ λ λ€μ λͺ©ν μ§μ μ λλ¬ λΆκ°λ₯ν κ²μ μλͺ
νκΈ° λλ¬Έμ
λλ€.
μ΄λ₯Ό ν΅ν΄μ μ€λ³΅λ νμ νμλ₯Ό μ€μΌ μ μμ΅λλ€.
μ²μμλ μ΄ λ¬Έμ κ° μ 그리λ
λ‘ λΆλ₯λμ΄ μλμ§ λͺ°λλλ° μ€λ³΅ νμμ μ€μ΄λ μμ΄λμ΄ λλ¬Έμ μ΄λ κ² λΆλ₯λ κ² κ°μ΅λλ€. π
μ½λ
import sys
sys.setrecursionlimit(10**6)
R, C = list(map(int, sys.stdin.readline().split()))
board = [list(sys.stdin.readline().strip()) for _ in range(R)]
def dfs(r, c):
global board
board[r][c] = 'x'
if c == C - 1:
return True
is_reachable = False
for nr, nc in [[r - 1, c + 1], [r, c + 1], [r + 1, c + 1]]:
if nr < 0 or nr >= R or nc >= C:
continue
if board[nr][nc] == '.':
is_reachable = is_reachable or dfs(nr, nc)
return is_reachable
def solution():
answer = 0
for r in range(R):
is_reachable = dfs(r, 0)
if is_reachable:
answer += 1
return answer
print(solution())
'π algorithm > boj' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
BOJ 14925 - λͺ©μ₯ 건μ€νκΈ° (0) | 2021.03.14 |
---|---|
BOJ 13164 - ν볡 μ μΉμ (0) | 2021.03.14 |
BOJ 14620 - κ½κΈΈ (0) | 2021.03.14 |
BOJ 2688 - μ€μ΄λ€μ§ μμ (0) | 2021.03.14 |
BOJ 16472 - κ³ λ₯μ΄ (0) | 2021.03.14 |
π¬ λκΈ