#include <iostream>
#include <vector>
using namespace std;
int main() {
int n;
cin >> n;
vector<int> a(n+1);
for (int i=1; i<=n; i++) {
cin >> a[i];
}
vector<int> d(n+1,-1);
d[0] = 0;
for (int i=1; i<=n; i++) {
for (int j=1; j<=i; j++) {
if (d[i] == -1 || d[i] > d[i-j]+a[j]) {
d[i] = d[i-j]+a[j];
}
}
}
cout << d[n] << '\n';
return 0;
}
'Problem set' 카테고리의 다른 글
[백준] 17413: 단어 뒤집기 2 (0) | 2020.12.29 |
---|---|
[백준] 17087: 숨바꼭질 6 (0) | 2020.12.29 |
[백준] 11727: 2×n 타일링 2 (0) | 2020.12.29 |
[백준] 11726: 2×n 타일링 (0) | 2020.12.29 |
[백준] 11052: 카드 구매하기 (0) | 2020.12.29 |