사서의 업무

시간 제한5초메모리 제한512 MB

요약
무게가 정해진 책의 순열이 주어질 때 두 가지 이동 연산으로 원래 순서를 복원하면서 드는 최소 노동량을 구한다.
난이도

어려움10점 중 8점

유형
그리디, 동적 계획법, 정렬, 구현
정답자
아직 제출이 없습니다

문제

Japanese Animal Girl Library(JAG Library)는 긴 책장으로 유명하다. 책장에는 책 NN권이 왼쪽에서 오른쪽으로 11번부터 NN번까지 번호가 붙어 있다. ii번째 책의 무게는 wiw_i이다.

어느 날, 장난꾸러기 여우 Jiro가 책장에 있는 책의 순서를 뒤섞었다! 순서는 왼쪽에서 오른쪽으로 순열 b1,…,bNb_1, \ldots, b_N이 되었다. JAG Library의 사서인 여우 Hanako는 원래 순서를 되돌려야 한다. 그녀는 책의 순열 p1,⋯ ,pNp_1, \cdots, p_N에 대해 아래에 설명한 작업 A 또는 작업 B 중 하나를, 1≤l<r≤N1 \le l < r \le N인 임의의 두 정수 ll과 rr로 수행해서 책의 순서를 바꿀 수 있다.

작업 A:

  • A-1. 책장에서 plp_l을 꺼낸다.
  • A-2. pl+1p_{l+1}과 prp_r 사이의 책을 왼쪽으로 옮긴다.
  • A-3. plp_l을 prp_r의 오른쪽에 넣는다.

작업 B:

  • B-1. 책장에서 prp_r을 꺼낸다.
  • B-2. plp_l과 pr−1p_{r-1} 사이의 책을 오른쪽으로 옮긴다.
  • B-3. prp_r을 plp_l의 왼쪽에 넣는다.

이 그림은 p=(3,1,4,5,2,6)p=(3,1,4,5,2,6), l=2l=2, r=5r=5에 대해 작업 A와 B를 수행하기 전과 후의 책 순서를 보여준다.

책이 무거워서 작업 A에는 ∑i=l+1rwpi+C×(r−l)×wpl\sum_{i=l+1}^{r} w_{p_i} + C \times (r-l) \times w_{p_l}만큼의 노동력이 필요하고, 작업 B에는 ∑i=lr−1wpi+C×(r−l)×wpr\sum_{i=l}^{r-1} w_{p_i} + C \times (r-l) \times w_{p_r}만큼의 노동력이 필요하다. 여기서 CC는 주어진 양의 정수 상수이다.

Hanako는 b1,⋯ ,bNb_1, \cdots, b_N에서 시작해서 이 작업을 반복해 처음 순서로 되돌려야 한다. 그렇게 하는 데 필요한 노동력 합의 최솟값을 구하여라.

입력

입력은 다음과 같은 형식의 단일 테스트 케이스로 주어진다.

$N \ C$
$b_1 \ w_{b_1}$
$\vdots$
$b_N \ w_{b_N}$

첫째 줄에는 두 정수 NN과 CC가 주어진다 (1≤N≤105,1≤C≤100)(1 \le N \le 10^5, 1 \le C \le 100). (i+1)(i+1)번째 줄에는 두 정수 bib_i와 wbiw_{b_i}가 주어진다 (1≤bi≤N,1≤wbi≤105)(1 \le b_i \le N, 1 \le w_{b_i} \le 10^5). 수열 (b1,…,bN)(b_1, \ldots, b_N)은 (1,…,N)(1, \ldots, N)의 순열이다.

출력

노동력 합의 최솟값을 한 줄에 출력한다.

예제3

  1. 예제 1

    입력
    3 2
    2 3
    3 4
    1 2
    
    예상 출력
    15
    
  2. 예제 2

    입력
    3 2
    1 2
    2 3
    3 3
    
    예상 출력
    0
    
  3. 예제 3

    입력
    10 5
    8 3
    10 6
    5 8
    2 7
    7 6
    1 9
    9 3
    6 2
    4 5
    3 5
    
    예상 출력
    824