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

728x90
728x90

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

 

2579번: 계단 오르기

계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. <그림 1>과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점

www.acmicpc.net

난이도: solved.ac 실버 3

 

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#define max(a,b) ((a)>(b)?(a):(b))

int stairs[301];
int dp[301];

int main() {
	int n, i;
	scanf("%d", &N);
	for (i = 1; i <= n; i++)
		scanf("%d", &stairs[i]);
	dp[1] = stairs[1];
	dp[2] = stairs[1] + stairs[2];
	for (i = 3; i <= n; i++)
		dp[i] = max(dp[i - 2], dp[i - 3] + stairs[i - 1]) + stairs[i];
	printf("%d", dp[n]);
	return 0;
}
반응형