전화선

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

문제

재현이는 한 마을에 전화선을 놓으려고 한다.

마을에는 전신주 $N$개가 일렬로 서 있고, $i$번째 전신주의 처음 높이는 $H_i$이다. 재현이는 먼저 각 전신주의 높이를 원하는 만큼 높인 뒤(높이를 낮출 수는 없다) $1, 2, \dots, N$번 전신주의 순서대로 전화선을 잇는다. 높인 뒤의 $i$번 전신주 높이를 $h_i$($h_i \ge H_i$)라고 하자.

  • 높이 인상 비용: 한 전신주의 높이를 $X$만큼 높이면 $X^2$의 비용이 든다. 즉 $i$번 전신주에서는 $(h_i - H_i)^2$이 든다.
  • 전화선 비용: 인접한 두 전신주 $i$와 $i+1$을 잇는 데에는 $C \times |h_i - h_{i+1}|$의 비용이 든다.

전신주의 높이를 적절히 높여 전화선을 모두 이었을 때 드는 최소 총비용을 구하여라. 총비용은 모든 높이 인상 비용의 합과 모든 전화선 비용의 합을 더한 값이다.

입력

첫째 줄에 전신주의 개수 $N$과 비용 계수 $C$가 공백으로 구분되어 주어진다. ($1 \le N \le 100{,}000$, $1 \le C \le 100$)

이어지는 $N$개의 줄에 각 전신주의 처음 높이 $H_i$가 한 줄에 하나씩 주어진다. ($1 \le H_i \le 100$)

출력

전화선을 모두 잇는 데 드는 최소 총비용을 한 줄에 출력한다.

힌트

전신주가 5개, $C = 2$이고 처음 높이가 차례로 $2, 3, 5, 1, 4$인 경우를 생각하자. 높이를 $[3, 3, 5, 3, 4]$로 높이면 총비용이 $15$가 되며, 이보다 더 적은 비용은 만들 수 없다.