아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

알프스 케이블카 2

면접 대비

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

요약
직각 이등변 삼각형 모양의 산들이 일렬로 놓여 있을 때, 1번 산 정상에서 N번 산 정상까지 최대 K개의 직선 와이어로 연결하되 와이어 길이 제곱의 합을 최소로 만든다.
난이도

보통10점 중 7점

유형
동적 계획법, 기하, 분할 정복, 수학
정답자
아직 제출이 없습니다

문제

ALPS 부원들은 친목 도모를 위해 다 같이 알프스 산맥으로 여행을 떠났다! 알프스 산맥은 NN개의 산이 겹치거나 빈 부분 없이 일렬로 나열된 형태이며, 왼쪽에서부터 ii번째에 위치한 산은 빗변을 아래로 하며 높이가 H_iH\_i인 직각 이등변 삼각형이다.

ALPS 부원들은 체력이 좋지 않기 때문에 11번 산에서 시작해 NN번 산에서 끝나는 케이블카 노선을 설치해 산을 오르려 한다. 노선을 설치하는 법은 다음과 같다.

  1. 11번 산의 정상과 다른 산의 정상을 직선으로 잇는 와이어를 설치하고, 다시 그 산의 정상에서 다른 산의 정상으로 와이어를 설치한다. 이 때 와이어는 산을 가로질러 설치될 수 있다.
  2. 이를 NN번 산을 끝으로 할 때까지 자유롭게 반복한다.

각 와이어의 설치 비용은 설치해야 할 와이어 길이의 제곱과 같으며 노선의 설치 비용은 사용한 와이어의 설치 비용의 합이다. ALPS 부원들을 위해 최대 KK개의 와이어를 사용하여 11번 산에서 시작해 NN번 산에서 끝나는 노선을 설치하기 위한 최소 비용을 구해보자.

입력

첫 번째 줄에 알프스 산맥을 이루는 산의 수 NN과 사용할 와이어의 개수 KK가 주어진다. (2≤N≤50,000;(2 \leq N \leq 50\\,000; 1≤K≤N−1)1 \leq K \leq N-1)

두 번째 줄에 각 산의 높이 H_1,H_2,⋯ ,H_NH\_1, H\_2, \cdots, H\_N이 공백으로 구분되어 정수로 주어진다. (1≤H_i≤100)(1 \leq H\_i \leq 100)

출력

최대 KK개의 와이어를 사용해 11번 산에서 시작해 NN번 산에서 끝나는 노선을 설치하기 위한 최소 비용을 출력한다.

예제1

  1. 예제 1

    입력
    4 2
    4 2 3 4
    
    예상 출력
    172