n = int(input())
cost = list(map(int, input().split()))
dp = [0 for _ in range(n+1)]
for i in range(2, n+1):
    dp[i] = min(dp[i-1] + cost[i-1], dp[i-2] + cost[i-2])
print(dp[-1])
这道题虽说是爬楼梯,所以还是按照爬楼梯的思路来

对于爬楼梯而言,当前第i阶可以由i-1阶一步跨一阶上来或者由i-2阶一步跨两阶上来
因此比较用一个dp数组保存花销,看看从上一阶上来花销小,还是从上两阶上来花销小