본문 바로가기
Beakjoon&프로그래머스/파이썬

[백준/파이썬] 15988번 1, 2, 3 더하기 3

by 현장 2021. 12. 6.

-코드

from sys import stdin
dp = [1, 2, 4]
for _ in range(int(stdin.readline())):
    n = int(stdin.readline())
    for i in range(len(dp), n):
        dp.append((dp[-1] + dp[-2] + dp[-3]) % 1000000009)
    print(dp[n - 1])

처음에 코드를

from sys import stdin
for _ in range(int(stdin.readline())):
    n = int(stdin.readline())
    dp = [1, 2, 4]
    for i in range(len(dp), n):
        dp.append((dp[-1] + dp[-2] + dp[-3]) % 1000000009)
    print(dp[n - 1])

dp를 안에 넣어서 시간 초과가 생겨서 위와 같이하니 해결이 되었고 print를 dp [-1]로해서 입력이 1, 2일 때 문제가 생긴 것도 같이 해결을 하였습니다.