최대 1 분 소요

문제링크 : https://www.acmicpc.net/problem/9461

테스트 케이스 N이 주어지고, 수열의 항인 num이 주어진다

필자는 문제의 첫 번째 항을 0번째 항으로 설정했으며, 초기에는 [1, 1, 1]으로 설정했다.

이때 3번째 항부터는 numbers[i-3] + numbers[i-2]이므로

for문을 통해서 항을 만들어주고, num-1 항을 출력했다.

간단한 다이나믹 프로그래밍 문제

N =int(input())

for _ in range(N):
    num = int(input())
    numbers = [1, 1, 1]
    for i in range(3, num+1):
        numbers.append(numbers[i-3]+numbers[i-2])
    print(numbers[num-1])

카테고리:

업데이트:

댓글남기기