求解地铁环线最大快乐值(环形数组最大子段和)
时间限制:1.0s
内存限制:512.0MB
题目描述
小A喜欢坐地铁。地铁环线有n个车站,依次以1,2,…,n标号。车站i(1≤i<n)的下一个车站是车站i+1。特殊地,车站n的下一个车站是车站1。
小A会从某个车站出发,乘坐地铁环线到某个车站结束行程,这意味着小A至少会经过一个车站。小A不会经过一个车站多次。当小A乘坐地铁环线经过车站i时,小A会获得$a_i$点快乐值。请你安排小A的行程,选择出发车站与结束车站,使得获得的快乐值总和最大。
输入格式
第一行,一个正整数n,表示车站的数量。 第二行,n个整数$a_1,a_2,…,a_n$,分别表示经过每个车站时获得的快乐值。
输出格式
一行,一个整数,表示小A能获得的最大快乐值。
样例
输入样例1
4
-1 2 3 0
输出样例1
5
输入样例2
5
-3 4 -5 1 3
输出样例2
5
数据范围
- 对于20%的测试点,保证$1≤n≤200$。
- 对于40%的测试点,保证$1≤n≤2000$。
- 对于所有测试点,保证$1≤n≤2×10^5$,$-10^9≤a_i≤10^9$。
本题为编程题,提交代码并运行通过测试点后判分。
正在加载题目数据…
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析