Notice
Recent Posts
Link
정화 코딩
EDOC 2024-1 5회차 정모 (동적 계획법 알아보기 2) 본문
A. 1, 2, 3 더하기 (백준 9095번)
https://www.acmicpc.net/problem/9095
#python
import sys
input = sys.stdin.readline
t = int(input())
dp = [0] * 12
dp[1] = 1
dp[2] = 2
dp[3] = 4
for i in range(4, 12):
dp[i] = dp[i - 1] + dp[i - 2] + dp[i - 3]
for _ in range(t):
n = int(input())
print(dp[n])
n을 1, 2, 3의 합으로 나타내려면 다음과 같은 경우의 수가 있다. (여기서 주의할 점은 1+2와 2+1가 다른 경우라는 것이다.)
1) (n-1)까지 만들고 1을 더하기
2) (n-2)까지 만들고 2를 더하기
3) (n-3)까지 만들고 3을 더하기
점화식 : dp[i] = dp[i - 1] + dp[i - 2] + dp[i - 3]
(정답)
'Group > EDOC' 카테고리의 다른 글
EDOC 2024-1 6회차 과제 (동적 계획법 알아보기 4) (0) | 2024.05.18 |
---|---|
EDOC 2024-1 5회차 과제 (동적 계획법 알아보기 3) (0) | 2024.05.12 |
EDOC 2024-1 5회차 정모 준비 (정렬, 다이나믹) (0) | 2024.05.08 |
EDOC 2024-1 4회차 과제 (동적 계획법 알아보기 2) (0) | 2024.05.04 |
EDOC 2024-1 4회차 정모 (동적 계획법 알아보기 1) (0) | 2024.04.10 |
Comments