-
[백준] 9461번 문제 (파도반 수열) 파이썬(Python) 풀이Problem Solving/Baekjoon 2021. 8. 19. 11:18
for _ in range(int(input())): n = int(input()) dp = [0] * 101 dp[1], dp[2], dp[3] = 1, 1, 1 dp[4], dp[5] = 2, 2 for i in range(6, n + 1): dp[i] = dp[i - 1] + dp[i - 5] print(dp[n])
가장 긴 변의 길이를 하나 씩 적어보면 5번째 긴 변부터 일정한 규칙으로 수열이 형성되는 것을 알 수 있다.
규칙은 바로 dp[index] = dp[index - 1] + dp[index - 5] 이며, 해당 식을 적용하면 정답을 구할 수 있다.
'Problem Solving > Baekjoon' 카테고리의 다른 글
[백준] 10844번 문제 (쉬운 계단 수) 파이썬(Python) 풀이 (0) 2021.08.19 [백준] 2579번 문제 (계단 오르기) 파이썬(Python) 풀이 (0) 2021.08.19 [백준] 2156번 문제 (포도주 시식) 파이썬(Python) 풀이 (0) 2021.08.15 [백준] 1699번 문제 (제곱수의 합) 파이썬(Python) 풀이 (0) 2021.08.14 [백준] 17103번 문제 (골드바흐 파티션) 파이썬(Python) 풀이 (0) 2021.08.11