구슬 놀이

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

문제

미르코가 구슬 놀이를 한다. 왼쪽에서 오른쪽으로 통 n개가 놓여 있고, 각 통에는 구슬이 몇 개씩 들어 있다. 한 번의 이동으로 구슬 한 개를 옆에 붙어 있는 통으로 옮길 수 있다. 옆에 붙어 있는 통은 변을 맞대고 있는 통을 말한다. 같은 구슬을 여러 번 옮겨도 되며, 옮길 때마다 이동 횟수를 따로 센다.

놀이가 끝나면 점수를 계산한다. 점수는 이웃한 두 통에 든 구슬 개수 차이의 절댓값을 모두 더한 값이다. 예를 들어 통 9개에 구슬이 왼쪽부터 9, 8, 3, 2, 7, 2, 3, 4, 6개 들어 있는 상태로 끝났다면 점수는 다음과 같다.

98+83+32+27+72+23+34+46=1+5+1+5+5+1+1+2=21|9-8| + |8-3| + |3-2| + |2-7| + |7-2| + |2-3| + |3-4| + |4-6| = 1 + 5 + 1 + 5 + 5 + 1 + 1 + 2 = 21

미르코는 점수를 최대로 만들고 싶고, 그 최대 점수를 얻는 방법 가운데 이동 횟수가 가장 적은 방법을 찾고 싶다. 두 값을 구하라.

입력

첫째 줄에 통의 개수 n이 주어진다. (1n1000001 \le n \le 100\,000)

둘째 줄에 각 통에 든 구슬의 개수 m이 왼쪽부터 순서대로 n개 주어진다. 두 수 사이는 공백 하나로 구분한다. (0m10000 \le m \le 1\,000)

출력

한 줄에 정수 두 개를 공백 하나로 구분해 출력한다. 첫째 수는 미르코가 얻을 수 있는 최대 점수이고, 둘째 수는 그 점수를 얻는 데 필요한 최소 이동 횟수이다. 다른 공백은 출력하지 않는다.