CF846C.Four Segments

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given an array of nn integer numbers. Let sum(l,r)sum(l,r) be the sum of all numbers on positions from ll to rr non-inclusive ( ll -th element is counted, rr -th element is not counted). For indices ll and rr holds 0<=l<=r<=n0<=l<=r<=n . Indices in array are numbered from 00 .

For example, if a=[5,3,9,4]a=[-5,3,9,4] , then sum(0,1)=5sum(0,1)=-5 , sum(0,2)=2sum(0,2)=-2 , sum(1,4)=16sum(1,4)=16 and sum(i,i)=0sum(i,i)=0 for each ii from 00 to 44 .

Choose the indices of three delimiters delim0delim_{0} , delim1delim_{1} , delim2delim_{2} ( 0<=delim0<=delim1<=delim2<=n0<=delim_{0}<=delim_{1}<=delim_{2}<=n ) and divide the array in such a way that the value of res=sum(0,delim0)res=sum(0,delim_{0}) - sum(delim0,delim1)sum(delim_{0},delim_{1}) + sum(delim1,delim2)sum(delim_{1},delim_{2}) - sum(delim2,n)sum(delim_{2},n) is maximal.

Note that some of the expressions sum(l,r)sum(l,r) can correspond to empty segments (if l=rl=r for some segment).

输入格式

The first line contains one integer number nn ( 1<=n<=50001<=n<=5000 ).

The second line contains nn numbers a0,a1,...,an1a_{0},a_{1},...,a_{n-1} ( 109<=ai<=109-10^{9}<=a_{i}<=10^{9} ).

输出格式

Choose three indices so that the value of resres is maximal. If there are multiple answers, print any of them.

输入输出样例

  • 输入#1

    3
    -1 2 3
    

    输出#1

    0 1 3
    
  • 输入#2

    4
    0 0 -1 0
    

    输出#2

    0 0 0
    
  • 输入#3

    1
    10000
    

    输出#3

    1 1 1
    
首页