N개의 부서를 하나로 합치려고 한다. 부서에 1부터 N까지 번호를 붙이고, 부서 i의 크기를 Si라고 하자. 한 번에 여러 부서를 합치면 혼란이 커지므로, 두 부서를 하나로 합치는 작업을 N−1번 반복해서 최종적으로 하나의 부서를 만든다. 한 번의 작업은 다음과 같다.
두 부서를 합치는 데에는 비용이 든다. 합치는 방법에 따라 비용이 다르지만, 비용이 Sa×Sb인 방법을 알고 있으므로 이 방법을 쓴다. 총비용의 최솟값과, 비용이 최소가 되는 서로 다른 과정의 가짓수를 구하여라. 두 과정이 서로 다르다는 것은 기록된 쌍을 순서대로 하나씩 비교했을 때 한 쌍이라도 다르다는 뜻이다.
첫째 줄에 부서의 수 N이 주어진다. (1≤N≤100000)
둘째 줄에 각 부서의 크기 S1,S2,…,SN이 공백으로 구분되어 주어진다. 각 크기는 1 이상 100 이하의 자연수이다.
첫째 줄에 총비용의 최솟값을 출력한다.
둘째 줄에 비용이 최소가 되는 서로 다른 과정의 가짓수를 1,000,000,007로 나눈 나머지를 출력한다.
쌍 (1,2)와 쌍 (2,1)은 서로 다른 경우로 센다.