import java.io.PrintWriter; import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; class Main { public static void main(String[] args) { new Main().run(); } long sum(int l,int r,long[] sum) { return (r>0?sum[r-1]:0)-(l>0?sum[l-1]:0); } void run() { Scanner sc=new Scanner(System.in); int N=sc.nextInt(); long[] A=new long[N]; long[] sum=new long[N]; for(int i=0;i0?sum[i-1]:0); long ans=0; for(int i=0;i1) { int middle=(ok+ng)/2; if(A[i-middle]+A[N-middle]-2*A[i]>0) { ok=middle; }else { ng=middle; } } ans=Math.max(ans, sum(N-ok,N,sum)+sum(i-ok,i,sum)-A[i]*2*ok); } for(int i=0;i+11) { int middle=(ok+ng)/2; if(A[i-middle]+A[i+1+middle]-A[i]-A[i+1]>0) { ok=middle; }else { ng=middle; } } ans=Math.max(ans, sum(N-ok,N,sum)+sum(i-ok,i,sum)-A[i]*ok-A[i+1]*ok); } System.out.println(ans); } static void tr(Object... objects) { System.out.println(Arrays.deepToString(objects)); } }