728x90

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

 

2579번: 계단 오르기

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

www.acmicpc.net

n = int(input())
data = [0]

for _ in range(n):
    data.append(int(input()))

if n == 1:
    print(data[1])
else:
    dp = [0] * (n+1)
    dp[1] = data[1]
    dp[2] = data[1] + data[2]
    
    for i in range(3, n+1):
        # 직전, 전전에서 오는 경우 중 최댓값
        dp[i] = max(data[i] + data[i-1] + dp[i-3], data[i] + dp[i-2])
    print(dp[n])

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기