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