알고리즘

[백준/DP/C++] 2156번 포도주 시식

데메즈 2022. 12. 24. 20:19
728x90
반응형

https://www.acmicpc.net/problem/2156

2156번: 포도주 시식

효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규

www.acmicpc.net

#include <bits/stdc++.h>

using namespace std;
int n;
int dp[10001] = {0}, arr[10001]={0};

int main(void) {
    cin >> n;

    for(int i=1; i<=n; i++) cin >> arr[i];

    dp[1] = arr[1];
    dp[2] = arr[1] + arr[2];

    for(int i=3; i<=n; i++){
        dp[i] = max(dp[i-2] + arr[i], dp[i-3] + arr[i-1] + arr[i]);
        dp[i] = max(dp[i-1], dp[i]);
    }
    cout << dp[n] << endl;

    return 0;
}


참고
https://mygumi.tistory.com/98

728x90
반응형