시간 제한
메모리 제한
시간 제한
1초
메모리 제한
128 MB
수열 a1,a2,…,an이 주어진다. 연산 reduce(i)는 인접한 두 원소 ai와 ai+1을 하나로 합쳐 그 자리에 max(ai,ai+1)를 놓는 연산이다. 이 연산을 한 번 수행할 때마다 수열의 길이는 1만큼 줄어든다.
reduce 연산 한 번의 비용은 합쳐지는 두 원소의 최댓값 max(ai,ai+1)이다. 길이가 n인 수열에 이 연산을 n−1번 수행하면 수열의 길이는 1이 된다.
수열의 길이를 1로 만들 때까지 수행한 모든 reduce 연산의 비용의 합의 최솟값을 구하여라.
첫째 줄에 수열의 길이 n (1≤n≤1,000,000)이 주어진다. 이어지는 n개의 줄에 수열의 원소 ai가 순서대로 하나씩 주어진다 (0≤ai≤1,000,000,000).
수열의 길이를 1로 만드는 데 드는 비용의 합의 최솟값을 첫째 줄에 출력한다.