문제링크
https://www.acmicpc.net/problem/9095
코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
import sys
input = sys.stdin.readline
t = int(input())
for i in range(t):
n = int(input())
d = [0]*12
d[1] = 1
d[2] = 2
d[3] = 4
if n>3:
for i in range(4,n+1):
d[i] = d[i-1]+d[i-2]+d[i-3]
print(d[n])
|
cs |
Point
- 다이나믹프로그래밍으로 접근
Subproblem 만족 & Optimal Substructure
- 풀이 방법:
현재 할 수 있는 행동은 3가지 => +3 or +2 or +1
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준]15990 1, 2, 3더하기 5 파이썬 python (0) | 2022.02.07 |
---|---|
[백준]11052 카드구매하기 16194 카드구매하기2 파이썬 python (0) | 2022.02.06 |
[백준]11727 2*n타일링2 파이썬 python (0) | 2022.02.04 |
[백준]11726 2*n 타일링 파이썬 python (0) | 2022.01.16 |
[백준]1463 1로 만들기 파이썬 python (0) | 2022.01.15 |