수열 합치기

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

수열 a1,a2,,ana_1, a_2, \dots, a_n이 주어진다. 한 번의 연산에서 인접한 두 수 aia_iai+1a_{i+1}을 골라 그 두 수를 max(ai,ai+1)\max(a_i, a_{i+1}) 하나로 바꿀 수 있고, 이때 드는 비용은 max(ai,ai+1)\max(a_i, a_{i+1})이다. 연산을 한 번 하면 수열의 길이가 1 줄어들므로 n1n-1번 하면 길이가 1이 된다.

수열이 주어졌을 때, 길이 1로 만드는 데 드는 최소 비용을 구하는 프로그램을 작성하라.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다. (1T1000001 \le T \le 100000)

각 테스트 케이스는 두 줄이다. 첫째 줄에 수열의 길이 NN이 주어진다. (2N50002 \le N \le 5000) 둘째 줄에 수열을 이루는 NN개의 정수가 공백 한 개로 구분되어 주어진다. 각 정수는 11 이상 100000100000 이하다.

출력

각 테스트 케이스마다 한 줄에 Case #x: R 형식으로 출력한다. xx는 1부터 시작하는 테스트 케이스 번호이고, RR은 그 수열을 길이 1로 만드는 최소 비용이다.