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

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

임프

시간 제한15초메모리 제한256 MB

요약
상자가 열리는 순서를 정해 최대 k개를 무효화하는 방해자를 상대로 보관한 물건 값에서 지불한 비용을 뺀 이득이 최대가 되도록 플레이한 결과를 구합니다.
난이도

어려움10점 중 8점

유형
게임 이론, 동적 계획법, 정렬
정답자
아직 제출이 없습니다

문제

어렵게 모은 금화를 들고 오래된 마법 상점에 들어섰다. 상점에는 신기한 물건이 n개 있고, 하나하나가 특별한 마법 상자 안에 잠겨 있다. i번 상자를 사려면 금화 cic_i개를 내야 하고, 그 안에는 금화 viv_i개 값어치의 물건이 들어 있다. 마법 도록을 읽고 통째로 외워 두었으므로 모든 상자의 값과 물건의 값어치를 이미 안다.

사람은 마법 물건을 한 개만 안전하게 지닐 수 있다. 그래서 가장 값진 물건 하나를 손에 넣는 것이 목표다. 임프라는 심술궂은 마법 생물만 아니었다면 그렇게 되었을 것이다.

임프는 마법 상자 속 물건을 쓸모없는 먼지로 바꾸는 주문을 걸 수 있다. 임프는 늘 상자를 산 직후에 주문을 걸어, 값은 치렀는데 물건은 얻지 못하게 만든다. 그러면 다른 상자를 사야 하고, 또 그다음 상자를 사야 한다.

임프가 주문을 거는 횟수는 많아야 k번이다. 물론 주문을 걸지 않고 물건을 그대로 가져가게 둘 수도 있다. 당신은 언제든지 빈손으로 상점을 나올 수 있다. 다만 물건을 하나 얻으면 그 물건을 지니고 상점을 떠나야 한다. 이익은 손에 넣은 물건의 값어치에서 그때까지 치른 금액을 모두 뺀 값이다. 당신은 이익을 가장 크게 하려 하고, 임프는 가장 작게 하려 한다. 둘 다 최선의 전략을 쓸 때 당신이 얻는 이익은 얼마인가?

입력

첫 줄에 테스트 케이스의 수 T가 주어진다. 이어서 테스트 케이스가 차례로 주어진다.

각 테스트 케이스의 첫 줄에는 물건의 개수 n (1≤n≤1500001 \le n \le 150000)과 임프가 주문을 거는 최대 횟수 k (0≤k≤90 \le k \le 9)가 주어진다. 다음 n개 줄 가운데 i번째 줄에는 i번 물건의 값어치 viv_i와 상자의 값 cic_i가 이 순서로 주어진다 (0≤vi,ci≤10000000 \le v_i, c_i \le 1000000).

출력

각 테스트 케이스마다 당신이 얻는 이익을 한 줄에 출력한다.

예제2

  1. 예제 1

    입력
    1
    3 1
    10 5
    8 1
    20 12
    
    예상 출력
    7
    
  2. 예제 2

    입력
    3
    4 0
    5 3
    9 2
    1 1
    7 7
    2 3
    100 1
    100 2
    5 2
    30 5
    25 4
    20 3
    15 2
    10 1
    
    예상 출력
    7
    0
    17