[백준] 2579번 : 계단 오르기 - C

강재원·2022년 11월 13일
0

[코딩테스트] C/C++

목록 보기
181/200



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

#include<stdio.h>
static int max(int a,int b){
    return a>=b?a:b;
}
int main() {
    int n;
    scanf("%d",&n);
    int arr[n+1];
    for(int i=1;i<=n;i++) scanf("%d",&arr[i]);
    int num[n+1];
    num[0]=0;
    num[1]=arr[1];
    if(n>1) num[2]=arr[1]+arr[2];
    for(int i=3;i<=n;i++){
        num[i]=max(num[i-2],num[i-3]+arr[i-1])+arr[i];
    }
    printf("%d",num[n]);
}
profile
개념정리 & 문법 정리 & 알고리즘 공부

0개의 댓글