测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A71707. 环线

编程题 基础

题目描述

小A喜欢坐地铁。地铁环线有 n 个车站,依次以 1, 2, \ldots, n 标号。车站 i 1 \leq i < n )的下一个车站是车站 i + 1 。特殊地,车站 n 的下一个车站是车站 1

小A会从某个车站出发,乘坐地铁环线到某个车站结束行程,这意味着小A至少会经过一个车站。小A不会经过一个车站多次。当小A乘坐地铁环线经过车站 i 时,小A会获得 a_i 点快乐值。请你安排小A的行程,选择出发车站与结束车站,使得获得的快乐值总和最大。

输入格式

第一行,一个正整数 n ,表示车站的数量。

第二行, n 个整数 a_1, a_2, \ldots, a_n ,分别表示经过每个车站时获得的快乐值。

输出格式

一行,一个整数,表示小A能获得的最大快乐值。

输入输出样例

输入 #1
4
-1 2 3 0
输出 #1
5
输入 #2
5
-3 4 -5 1 3
输出 #2
5

说明/提示

数据范围

对于20%的测试点,保证 1 \leq n \leq 200

对于40%的测试点,保证 1 \leq n \leq 2000

对于所有测试点,保证 1 \leq n \leq 2 \times 10^5-10^9 \leq a_i \leq 10^9