다이나믹 프로그래밍

· Algorithm
https://www.acmicpc.net/problem/9095 정수 n이 주어졌을 때 1, 2, 3의 숫자만을 이용해서 합을 나타내고 그 경우의 수를 구하는 문제이다. 코드 #include #include using namespace std; int main() { int T; int N; cin >> T; vector arr(12); arr[1] = 1; arr[2] = 2; arr[3] = 4; for (int i = 4; i N; cout 1 + 1 2 경우의 수 : 2 1 + 1 + 1 1 + 2 2 + 1 3 경우의 수 : 4 <..
· Algorithm
https://www.acmicpc.net/problem/1463 1. X가 3으로 나누어 떨어지면 3으로 나눈다. 2. X가 2로 나누어 떨어지면 2로 나눈다. 3. 1을 뺀다 이 3개의 연산을 최소한의 횟수로 1을 만드는 문제이다. 코드 #include #include #include using namespace std; int main() { int N; cin >> N; vector dp(N + 1); dp[1] = 0; dp[2] = 1; dp[3] = 1; //dp[4] = dp[3] + 1 = 2 //dp[5] = dp[4] + 1 = 3 //dp[6] = dp[5] + 1 = 4 => 오류 for (int i = 4; i 1 4 -> 2 -> 1 5 -> 4 -> 2 ->..
alsrudwls01
'다이나믹 프로그래밍' 태그의 글 목록