Lem0nad3's Bar

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

요약
레모네이드가 시각 t_i에 청량감 x_i로 나오고 시간당 1씩 줄어들 때, 최대 K잔을 골라 가중치 K, K-1, ...을 곱한 행복함의 최댓값을 구한다.
난이도

보통10점 중 7점

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

문제

앞에 있는 수많은 문제를 풀어낸 근수는 너무 피곤해서 레모네이드 바에 들어가서 휴식을 취하려 한다.

레모네이드 바에는 NN개의 레모네이드가 각각 t_it\_i의 시각에 x_ix\_i의 청량감을 가지고 나온다. 시간이 지날수록 레모네이드 안에 든 탄산이 빠지기 때문에 레모네이드가 나오고 11만큼의 시간이 지날 때마다 레모네이드의 청량감은 11씩 떨어진다. 즉 TT (T≥t_i)(T \ge t\_i)의 시각에서 레모네이드의 청량감은 x_i−(T−t_i)x\_i - (T - t\_i)가 된다.

근수는 KK만큼의 갈증이 있으므로 최대 KK개만큼의 레모네이드를 마실 수 있다. 목이 마를 때 마시는 레모네이드는 더 많은 행복함을 준다. 근수가 첫 번째로 마시는 레모네이드는 청량감의 KK배의 행복함을 준다. 두 번째로 마시는 레모네이드는 청량감의 K−1K-1배의 행복함을 주고, ii 번째로 마시는 레모네이드는 청량감의 K+1−iK+1-i배의 행복함을 준다. 즉 TT (T≥t_i)(T \ge t\_i)의 시각에서 ii번째 레모네이드를 jj번째에 마셨을 때 행복함은 (x_i−(T−t_i))×(K+1−j)(x\_i - (T - t\_i)) \times (K+1-j) 만큼 증가한다.

레모네이드를 마시는 데 걸리는 시간은 무시할 수 있을 정도로 빠르다. 즉 같은 시각에 레모네이드 여러 잔을 임의의 순서로 마실 수 있다.

근수는 현재 00의 행복함을 가지고 있다. 이제 적절하게 레모네이드를 마셔 근수에게 최대의 행복함을 선물해 주자.

입력

첫 번째 줄에 레모네이드의 개수 NN과 현재 갈증 수치 KK가 공백으로 구분되어 주어진다. (1≤N≤2,000;1≤K≤121 \le N \le 2\\,000; 1 \le K \le 12)

두 번째 줄부터 N+1N+1 번째 줄까지 각각의 레모네이드가 나오는 시각 t_it\_i와 초기 청량감 x_ix\_i가 공백으로 구분되어 주어진다. (1≤t_i,x_i≤10121 \le t\_i, x\_i \le 10^{12})

출력

근수가 얻을 수 있는 행복함의 최댓값을 출력한다.

예제3

  1. 예제 1

    입력
    4 3
    2 7
    3 4
    7 1
    8 5
    
    예상 출력
    34
    
  2. 예제 2

    입력
    4 5
    1 100
    2 1
    10 10000
    100 1000
    
    예상 출력
    54003
    
  3. 예제 3

    입력
    5 4
    3 100
    1 20
    1 20
    1 20
    1 20
    
    예상 출력
    508