코딩하는 해맑은 거북이

[Python] 1, 2, 3 더하기 - 백준 (DP) 본문

코딩테스트

[Python] 1, 2, 3 더하기 - 백준 (DP)

#CJE 2022. 12. 19.
해당 글은 백준 9095번 문제 '1, 2, 3 더하기'를 다룬다.

문제

https://www.acmicpc.net/problem/9095

 

9095번: 1, 2, 3 더하기

각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다.

www.acmicpc.net

 

설명

DP로 풀 수 있는 문제이며 1, 2, 3 의 숫자의 합으로 나타내기때문에 dp[1], dp[2], dp[3]의 경우의 수를 대입한다.

그리고 4이상의 경우의 수는 dp[i-1]+dp[i-2]+dp[i-3]이 된다.

 

코드

n = int(input())
dp = [0]*11

dp[1] = 1
dp[2] = 2
dp[3] = 4

for i in range(4, 11):
    dp[i] = dp[i-1]+dp[i-2]+dp[i-3]

for i in range(n):
    print(dp[int(input())])

     

 

 

'코딩테스트' 카테고리의 다른 글

[Python] 1로 만들기 - 백준 (DP)  (0) 2022.12.20
[Python] 소수 구하기 - 백준  (0) 2022.12.19
[Python] 한수 - 백준  (0) 2022.12.18
[Python] 덩치 - 백준  (0) 2022.12.18
[Python] 단어 정렬 - 백준  (0) 2022.12.17
Comments