[백준 9461번] 파도반 수열
def solution(n): dp = [0]*101 dp[1], dp[2], dp[3], dp[4], dp[5] = 1, 1, 1, 2, 2 if n=6) = P(n-1) + P(n-5) 위와 같은 점화식이 도출되고 나서, DP 알고리즘 중에서도 Top-Down 방식을 사용하여 문제를 해결할 수 있었다 :) (재귀 함수를 이용한 탑-다운이 아니라, 반복문을 이용한 바텀-업 방식을 사용했다면 더 빠르게 풀이할 수 있었을 것이다.)
2023. 3. 2.
[백준 9184번] 신나는 함수 실행
import sys input = sys.stdin.readline def w(a,b,c): if a 20: return w(20,20,20) if dp[a][b][c]: return dp[a][b][c] if a < b and b < c: dp[a][b][c] = w(a,b,c-1) + w(a,b-1,c-1) - w(a,b-1,c) return dp[a][b][c] dp[a][b][c] = w(a-1,b,c) + w(a-1,b-1,c) + w(a-1,b,c-1) - w(a-1,b-1,c-1) return dp[a][b][c] dp = [[[0 for _ in range(21)] for _ in range(21)] for _ in range(21)] while True: a, b, c = map(int,..
2023. 3. 1.