n = gets.to_i v = gets.split.map(&:to_i) dp = Array.new(n + 1) dp[0] = 0 dp[1] = v[0] 2.upto(n){|i| dp[i] = [dp[i - 1], dp[i - 2] + v[i - 1]].max } p dp[n]