백준 2133 타일 채우기

gmlwlswldbs·2021년 9월 23일
0

코딩테스트

목록 보기
34/130
n = int(input())
d = [0] * (n + 1)
d[0] = 1
for i in range(2, n+1, 2):
    d[i] = d[i-2] * 3
    for j in range(i-4, -1, -2):
        d[i] += (d[j] * 2)

print(d[n])
    

dp -> 작은 문제들이 많은 경우가 있다
이 문제는 n이 짝수일 때 마다(2 제외) 가운데 걸쳐있는 경우가 2가지씩 생겨서 이것을 모두 포함해주어야 한다.

0개의 댓글