[BOJ] 계단 오르기

Date:

[BOJ] 계단 오르기

Problem URL : 계단 오르기

#include <algorithm>
#include <iostream>
using namespace std;

int main() {
    int N;
    int stairs[301] = { 0, };
    int dp[301] = { 0, };

    cin >> N;
    for (int i = 1; i <= N; i++) {
        cin >> stairs[i];
    }

    dp[1] = stairs[1];
    dp[2] = stairs[1] + stairs[2];
    for (int i = 3; i <= N; i++) {
        dp[i] = max(dp[i - 2], dp[i - 3] + stairs[i - 1]) + stairs[i];
    }

    cout << dp[N];
}

댓글