π― μκ³ λ¦¬μ¦/BOJ
[λ°±μ€/Python] 10844:μ¬μ΄ κ³λ¨ μ
κ³λμλ
2024. 6. 27. 17:08
https://www.acmicpc.net/problem/10844
κ·μΉμ λ¨Όμ μ°Ύμ보μ
λ³ΈμΈμ A4μ©μ§μ κ·Έλ €κ°λ©° κ·μΉμ μ°Ύμ보μλ€.
μΈλ±μ€λ₯Ό 0λΆν°ν΄μ μ λ ₯μ΄ μ΅λ 100μ΄κΈ°μ, 100ν 10μ΄λ‘ λ§λ€μ΄λ³Έλ€λ©΄, μλ μ¬μ§κ³Ό κ°μ΄ λμ¨λ€.
μ¨λ³΄λ κ·μΉμ΄ 보μΈλ€.
1νμ λͺ¨λ κ°μ΄ 1μ΄κ³ , 2νλΆν°λ νΉλ³ν κ·μΉμ΄ μκΈ΄λ€.
νμ΄νλ‘ νμν΄ λμλ― 0μ΄μ κ°μ μ΄μ νμ 1μ΄μ κ°μ΄κ³ ,9μ΄μ κ°μ μ΄μ νμ 8μ΄μ κ°μμ μ μ μλ€.
λν κ°μ΄λ° κ°λ€μ μλ₯Όλ€μ΄ 3ν 3μ΄μ΄λΌκ³ νλ©΄, κ·Έ κ°μ 2ν2μ΄κ³Ό 2ν4μ΄μ κ°μ ν©μμ μ μ μλ€.
μ΄μ νλ·Έλ μ΄μ μΌλ‘ νμ΄λ³΄μ
n=int(input())
cache = [[0]* 10 for _ in range(101)]
for i in range(1,101):
for j in range(0,10):
if i ==1:
cache[i][j] =1
elif j==0:
cache[i][j] = cache[i-1][j+1]
elif j==9:
cache[i][j] = cache[i-1][j-1]
else:
cache[i][j] = cache[i-1][j-1] + cache[i-1][j+1]
arr=[0] * 101
for i in range(1,101):
for j in range(1,10):
arr[i]+= cache[i][j]
print(arr[n]%1000000000)