쌓고 쌓다
[백준] 카드 구매하기2 16194번 C++ 풀이 본문
https://www.acmicpc.net/problem/16194
#include <iostream>
#include <algorithm>
using namespace std;
int arr[10001];
int dp[10001];
int N;
int main(void)
{
cin >> N;
for (int i = 1; i <= N; i++)
cin >> arr[i];
for (int i = 1; i <= N; i++) // 총 i장을 살거야
{
dp[i] = arr[i]; // i장살때 기본으로 i장든거 사는걸 초기값
for (int j = 1; j <= i; j++) // i장중 j장은 따로 살거야
dp[i] = min(dp[i], dp[i - j] + dp[j]);
/* 위 줄은 i장을 살때 그냥 i장을 사는게 쌀까 ?
* i-j장 최소비용+j장 최소비용이 쌀까 ? 비교하는것
*/
}
cout << dp[N];
}
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 풍선 터뜨리기 2346번 C++ 풀이 (0) | 2021.12.25 |
---|---|
[백준] 운동 1956번 C++ 풀이 (0) | 2021.12.24 |
[백준] 1로 만들기2 12852번 C++ 풀이 (0) | 2021.12.22 |
[백준] 그림 1926번 C++ 풀이 (0) | 2021.12.21 |
[백준] 숫자판 점프 2210번 C++ 풀이 (0) | 2021.12.20 |
Comments