회윤이의 여행
시간 제한2초메모리 제한512 MB
원점 (0, 0)에서 목적지 (Ex, Ey)까지 가는 데 드는 최소 스태미나를 구합니다. 한 칸 이동은 1, 아이템 사용은 2를 소모하며, 도달할 수 없으면 -1을 출력합니다.
문제
회윤이는 잠시 휴식을 취하려고 자신의 가상 세계인 유니월드에 들어왔다. 유니월드는 무한한 2차원 격자판이고, 회윤이는 현재 에 서 있다. 회윤이는 목적지 에 가기 위해 다음 두 종류의 행동을 반복할 수 있다.
- 인접한 격자판으로 한 칸 이동한다. 즉 좌표를 만큼 바꾸거나 좌표를 만큼 바꾼다. 이 행동은 기력을 만큼 소모한다.
- 가지고 있는 아이템 하나를 사용한다. 아이템은 형태로 주어지며, 사용하면 좌표가 만큼, 좌표가 만큼 증가한다. 즉 좌표가 일 때 아이템을 사용하면 가 된다. 이 행동은 아이템을 소모하지 않으므로 같은 아이템을 여러 번 사용할 수 있다. 기력은 만큼 소모한다.
기력이 미만으로 떨어지면 현실 세계로 돌아가게 되므로, 회윤이는 기력을 이상으로 유지하려고 한다. 또한 회윤이는 허약체질이라 초기 기력이 를 넘지 않는다. 회윤이가 목적지에 도달할 수 있는지 구해 보자. 도달할 수 있다면 그때 소비해야 하는 기력의 최솟값을 구해 보자.
입력
첫째 줄에 아이템의 개수 과 회윤이의 초기 기력 가 공백으로 구분되어 주어진다. (, )
둘째 줄부터 번째 줄까지 각 아이템의 정보 가 공백으로 구분되어 주어진다. ()
마지막 줄에는 회윤이의 목적지 가 공백으로 구분되어 주어진다. ()
아이템과 목적지는 이 아니며, 같은 아이템이 중복되어 주어지지 않는다.
출력
목적지에 도달하기 위해 소비해야 하는 기력의 최솟값을 출력한다. 초기 기력 로 목적지에 도착할 수 없으면 -1을 출력한다.