다이나믹프로그래밍

알고리즘/백준(BOJ)

[백준/파이썬] 12852번 1로 만들기 2

https://www.acmicpc.net/problem/12852 12852번: 1로 만들기 2 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 자연수 N이 주어진다. www.acmicpc.net DP문제이다. 여느 DP문제가 그렇듯, 탑다운이 아니라 바텀업으로 풀어야한다. 이 문제의 점화식은 아래 3가지 조건을 만족해야한다. 점화식을 f(x)라 하자. 1. f(x) = f(x-1) + 1 --> 1을 더해서 만드는 경우 2. if x % 3 == 0, f(x) = f(x/3) + 1 --> x가 3으로 나눠질 때 3. if x % 2 == 0, f(x) = f(x/2) + 1 --> x가 2로 나눠질 때 ※ 여기서 더하기 1은 경우의 수가 하나 증가함을 의미한다!! 예를 들어 설명해보자면, 우..

알고리즘/백준(BOJ)

DP의 대표적 문제 - BOJ 1463번

#include using namespace std; int dp[1000001]; int min(int a, int b) { if (a > b) return b; return a; } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin >> n; dp[1] = 0; for (int i = 2; i

beomseok99
'다이나믹프로그래밍' 태그의 글 목록