CodingTest/Baekjoon

[baekjoon] 백준 9461번(파이썬): 파도반 수열

JunJangE 2021. 11. 30. 02:38

문제

 

9461번: 파도반 수열

오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의

www.acmicpc.net

알고리즘

- 점화식을 구한다.

- 반복문을 통해 구한 점화식을 코드로 수행한다.

코드

import sys

t = int(sys.stdin.readline())

# 테스트 케이스만큼 반복한다.
for _ in range(t):
    n = int(sys.stdin.readline())
    dp = [1] * (n + 1)

    # 반복문을 통해 점화식을 코드로 수행
    # n = 1일때 1, n = 2일때 1, n = 3일때 1, n = 4일때 2, n = 5일때 2, n = 6일때 3 ..
    # f(n) = f(n - 2) + f(n - 3)
    for i in range(3, n + 1):
        dp[i] = dp[i - 2] + dp[i - 3]

    print(dp[n - 1])

github

 

GitHub - junjange/CodingTest: 내가 푼 코딩 테스트 문제와 해결법

내가 푼 코딩 테스트 문제와 해결법. Contribute to junjange/CodingTest development by creating an account on GitHub.

github.com