반응형

백준 5

BOJ 11047번, 1463번. DP

* DP 기본 유형 백준 11047번 import sys N = int(sys.stdin.readline().rstrip()) dp = [0] * 1001 dp[1] = 1 dp[2] = 2 for i in range(3, 1001): dp[i] = dp[i-1] + dp[i-2] print(dp[N] % 10007) 백준 1463번 기존 cache 값과 새롭게 업데이트 되는 값을 비교 할 때, min 함수 사용. import sys def dp(N: int) -> int: cache = [N+1] * (N+1) cache[1] = 0 for i in range(2, N+1): if i % 3 == 0: cache[i] = min(cache[i//3] + 1, cache[i]) if i % 2 == 0:..

알고리즘 2023.01.19

BOJ 9095번

DP를 이용하는 기초문제. N = int(input()) d = [0] * 100000 def calc(x): if x == 1: return 1 # 1 elif x == 2: return 2 # 1 + 1, 2 elif x == 3: return 4 # 1 + 1 + 1, 1 + 2, 3 if d[x] != 0: return d[x] d[x] = calc(x-1) + calc(x-2) + calc(x-3) return d[x] for _ in range(N): num = int(input()) print(calc(num)) 백준허브라는 크롬 익스텐션을 사용하니, 백준 문제를 해결하면 레포지토리에 자동업로드 되게 할 수 있었다. 매우 유용한 익스텐션이다.

알고리즘 2023.01.18
반응형