Yunny's Trip

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

요약
원점에서 기력 K(최대 5)로 시작해 한 칸 이동에 1, N개의 아이템 재사용에 2의 기력을 쓰며 목적지까지 가는 최소 기력을 구하고, 불가능하면 -1을 출력한다.
난이도

어려움10점 중 8점

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

문제

회윤이는 잠시 휴식을 취하기 위해 자신의 가상 세계인 유니월드에 들어왔다. 유니월드는 무한한 2차원 격자판이고 회윤이는 현재 (0,00, 0)에 서있다. 회윤이는 자신의 목적지인 (E_x,E_y)(E\_x, E\_y)에 가기 위하여 다음 2가지 종류의 행동을 반복할 수 있다.

  1. 인접한 격자판으로 한 칸 이동한다. 즉 xx좌표를 11만큼 변화시키거나 yy좌표를 11만큼 변화시킨다. 이 행동은 기력을 11만큼 소모한다.
  2. 회윤이가 들고 있는 아이템을 하나 사용한다. 아이템은 (a_i,b_i)(a\_i, b\_i) 형태로 주어지며 회윤이의 xx좌표를 a_ia\_i만큼, yy좌표를 b_ib\_i만큼 증가시킨다. 즉 회윤이의 좌표를 (x,y)(x, y)라고 할 때, 아이템을 사용하였을 시의 좌표는 (x+a_i,y+b_i)(x+a\_i, y+b\_i)가 된다. 이 행동은 아이템을 소모하지 않으며 (즉 하나의 아이템을 여러 번 사용할 수 있다), 기력을 22만큼 소모한다.

회윤이의 기력이 00 미만으로 떨어져 버리면 현실 세계로 돌아오게 되므로 회윤이는 기력을 00 이상으로 보존하려고 한다. 또한 회윤이는 허약체질이라 초기 기력이 55를 초과하지 않는다. 회윤이가 목적지에 도달할 수 있는지 구해보자. 또 도착할 수 있으면 그때 소비해야 하는 기력의 최솟값을 구해보자.

입력

첫째 줄에 아이템의 개수 NN과 회윤이의 초기 기력 KK가 공백으로 구분되어 주어진다. (1≤N≤2×105;1≤K≤51 \le N \le 2\times10^5; 1 \le K \le 5)

둘째 줄부터 N+1N+1번째 줄까지 각각의 아이템의 정보 a_i,b_ia\_i, b\_i가 공백으로 구분되어 주어진다. (−1012≤a_i,b_i≤1012)(-10^{12} \le a\_i, b\_i \le 10^{12})

마지막 줄에는 회윤이의 목적지 E_x,E_yE\_x, E\_y가 공백으로 구분되어 주어진다. (−1012≤E_x,E_y≤1012)(-10^{12} \le E\_x, E\_y \le 10^{12})

아이템과 목적지는 (0,0)(0, 0)이 아니고 동일한 아이템이 중복되어 주어지지 않는다.

출력

회윤이가 소비해야 하는 기력의 최솟값을 출력한다. 만약 회윤이가 KK의 기력으로 목적지에 도착할 수 없으면 -1을 출력한다.

예제3

  1. 예제 1

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

    입력
    3 5
    4 -1
    2 2
    0 4
    4 4
    
    예상 출력
    4
    
  3. 예제 3

    입력
    2 3
    3 0
    -12 -12
    4 1
    
    예상 출력
    -1