본문 바로가기

알고리즘

Boj 14501 c++ 퇴사

dp는 여전히 어렵다. 다음에는 뒤에서 부터 다시 코드를 짜봐야겠다.

#include <iostream>
using namespace std;
int dp[20];
int T[20];
int V[20];
int main () {
    int N; cin>>N;
    for(int i = 0; i < N; i++) {
        cin >> T[i] >> V[i];
    }
    int ans = 0;
    for(int i=0; i<=N; i++){
        dp[i]=max(ans, dp[i]);
        if (T[i]+i<=N){
            dp[T[i]+i]=max(dp[T[i]+i],V[i]+dp[i]);
        }
        ans = max(ans, dp[i]);
    }
    cout << ans;
}

'알고리즘' 카테고리의 다른 글

Boj 14499 주사위 굴리기 Python  (6) 2025.07.29
Boj 2310 c++ 어드벤처 게임  (0) 2025.07.24
Boj 7571 c++ 점 모으기  (0) 2025.07.20
Boj 32069 c++ 가로등  (1) 2025.07.20
Boj 28325 c++ 호숫가의 개미굴  (2) 2025.07.20