나비와 전봇대 (Easy)
시간 제한1초메모리 제한1024 MB
각 시작 기둥 p마다 양쪽으로 높이가 단조로운 기둥들을 고르고, 전선이 다른 기둥을 가로지르지 않으면서 총 길이가 최대인 경우의 최소 제곱 비용을 구합니다.
문제
나비는 새로 건설할 도시의 전봇대를 관리하는 일을 맡았다. 아직 전선이 연결되지 않았으므로, 나비는 이 전봇대들 사이에 전선을 연결해야 한다. 전봇대는 간격 1로 직선을 따라 총 개가 세워져 있으며, 왼쪽부터 1번에서 번까지 번호가 붙어 있다. 첫 번째 전봇대의 위치는 1이고, 처음에 번 전봇대의 높이는 이다. 좌표평면에서 번 전봇대는 에서 까지 이어진 선분이다.
전선은 두 전봇대의 가장 윗부분을 최단 거리로 잇는다. 번 전봇대와 번 전봇대가 연결되면 와 를 잇는 선분이 그어진다. 이때 연결 비용은 전선 길이의 제곱이다.
나비는 준혁이에게 시작 전봇대의 번호 를 받는다. 그다음 번 전봇대를 포함하여 전봇대를 여러 개 고르고, 전선으로 연결한다. 고른 전봇대를 번호의 오름차순으로 정렬한 것을 라 하면, 인 모든 에 대해 번 전봇대와 번 전봇대를 전선으로 잇는다.
나비는 다음 조건을 만족하도록 전봇대를 고르고 연결해야 한다.
- 연결한 전선은 전봇대와 교차해서는 안 된다. 단, 전선이 어떤 전봇대 의 윗부분 에서 만나는 것은 가능하다.
- 를 기준으로 왼쪽으로 갈수록 고른 전봇대의 높이가 단조증가하고, 오른쪽으로 갈수록 고른 전봇대의 높이도 단조증가해야 한다. 즉 일 때 를 만족해야 한다.
- 나비는 연결한 전선 길이의 합이 최대가 되도록 전선을 연결하려고 한다. 그런 방법이 여러 가지라면, 연결 비용의 합이 최소인 방법으로 연결한다.

준혁이는 나비에게 개의 작업을 준다. 작업마다 시작 전봇대가 일 때, 조건을 만족하면서 연결 비용 합의 최솟값을 구한다.
입력
첫째 줄에 이 주어진다. ()
둘째 줄에 정수 이 공백으로 구분되어 주어진다. ()
셋째 줄에 작업의 수 가 주어진다. ()
넷째 줄부터 개의 줄에 걸쳐 시작 전봇대의 번호 가 주어진다. ()
출력
줄마다 시작 전봇대의 번호가 일 때 연결 비용의 합을 한 줄에 하나씩 출력한다.