import sys
input = sys.stdin.readline
def BOJ9461() :
T = int(input())
dp = [0] * 102
dp[0] = 1
dp[1] = 1
dp[2] = 1
for i in range(3, 102) :
dp[i] = dp[i-3] + dp[i-2]
for _ in range(T) :
n = int(input())
print(dp[n-1])
BOJ9461()
접근방법
1. 점화식만 찾아내면 문제는 끝난다.(dp 문제들의 핵심인것 같다)
2. 문제에서 다행히 예시를 잘 보여주어서 점화식 찾기가 어렵지 않았다.
https://www.acmicpc.net/problem/9461
9461번: 파도반 수열
오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의
www.acmicpc.net
'알고리즘' 카테고리의 다른 글
가장 큰 증가 부분 수열[백준 11055] - python (0) | 2022.01.02 |
---|---|
LCS [백준 9251] - python (0) | 2022.01.01 |
01타일 [백준 1904] - python (0) | 2021.12.30 |
파이프 옮기기 1 [백준 17070] - python (0) | 2021.12.29 |
가장 긴 증가하는 부분 수열 5[백준 14003] - python (0) | 2021.12.27 |