문제
창호는 문자열 내에서 인접한 두 문자보다 자신이 더 알파벳상으로 높은 문자일 때, 그 문자를 우수하다고 하기로 했다. 즉, 한 문자열 내에서, i번째 문자는 (i-1)번째와 (i+1)번째 문자보다 알파벳상으로 높으면 우수하다. 맨 처음 문자와 맨 끝 문자는 절대로 우수하지 않다.
26개의 소문자 알파벳의 개수가 각각 주어질 때, 그 문자들을 다 사용해서 문자열을 만드는 경우, 우수한 문자 수의 최댓값을 구하는 프로그램을 작성하라.
입력
첫째 줄에는 T(1 <= T <= 10,000)가 주어진다. T는 테스트 케이스의 개수다.
다음 t 줄마다, a부터 z까지의 문자 빈도를 나타내는 26개의 정수가 주어진다. 빈도는 0 이상 10^9 이하이다.
출력
모든 주어진 문자들을 사용해서 얻을 수 있는 우수한 문자 수의 최댓값을 출력하라.
예제
5
0 0 0 0 2 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0
1 2 2 3 4 0 3 4 4 1 3 1 4 4 1 0 0 0 0 0 4 2 3 2 2 1
1 1 3 3 1 1 4 4 3 1 3 3 3 0 1 2 0 4 2 1 3 0 3 1 1 1
3 3 0 2 2 2 4 1 2 1 1 1 3 3 0 0 3 2 2 4 1 4 4 1 2 1
2 1 4 1 0 2 0 3 1 2 0 3 1 1 2 0 1 4 2 3 2 3 2 0 2 1
1
25
24
25
21
힌트
출처
Hackerrank, saikiran9194, 2018camp contest2 problemE