만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

준영이의 사랑

면접 대비

시간 제한1초메모리 제한1024 MB

요약
원형으로 배열한 진주 값들의 인접한 곱의 합이 최대가 되도록 N개의 값을 배치하고, 최댓값과 그 배치를 출력합니다.
난이도

보통10점 중 4점

유형
그리디, 정렬, 배열
정답자
아직 제출이 없습니다

문제

선린의 대표 스윗남인 준영이는 여자친구 아스나를 위한 선물을 준비 중이다. 그는 NN개의 진주로 이루어진 원형 진주 목걸이를 선물할 생각이다.

ii (1≤i≤N)(1 \leq i \leq N)번째 진주알의 가치는 PiP_{i}이다. 준영이는 이 진주알 NN개를 적당한 순서로 재배열하여 목걸이의 가치가 최대가 되도록 하려고 한다. 재배열한 후 ii번째 진주알의 가치를 AiA_i (1≤i≤N)(1 \leq i \leq N)라 하자. 목걸이의 가치 XX는 서로 인접한 진주알 쌍마다 두 진주알의 가치를 곱한 값을 모두 더한 것이다.

X=A1×A2+A2×A3+⋯+AN−1×AN+AN×A1X=A_{1}\times A_{2}+A_{2}\times A_{3}+\cdots+A_{N-1}\times A_{N}+A_{N}\times A_{1}

목걸이 가치 XX의 최댓값과, 그 가치가 나오도록 재배열했을 때의 ii번째 진주알 가치 AiA_i를 출력하라. 가치가 최대인 배치가 여러 개면 그중 하나를 출력하면 된다.

입력

첫째 줄에 진주알의 개수 NN이 주어진다.

둘째 줄에 각 진주알의 가치 P1,P2,⋯ ,PNP_1, P_2, \cdots, P_N이 공백으로 구분되어 주어진다.

입력되는 수는 모두 정수이다.

출력

첫째 줄에 목걸이 가치의 최댓값 XX를 출력하라.

둘째 줄에 그 가치가 나오도록 재배열한 목걸이의 각 진주알 가치 A1,A2,⋯ ,ANA_1, A_2, \cdots, A_N을 공백으로 구분하여 출력하라.

제한

  • 3≤N≤2 0003 \leq N \leq 2\,000
  • 1≤Pi≤1 0001 \leq P_{i} \leq 1\,000 (1≤i≤N)(1 \leq i \leq N)

예제1

  1. 예제 1

    입력
    3
    2 3 5
    
    예상 출력
    31
    2 3 5