개구리와 쿼리
시간 제한1초메모리 제한128 MB
N×N 격자의 이동 비용을 바탕으로 각 질의마다 개구리가 오른쪽 끝에 도달하는 최소 시간을 구합니다. 개구리는 길이 L 이상의 위쪽 점프를 한 번 할 수 있습니다.
문제
크기의 차원 배열로 이루어진 연못에 마리의 개구리가 모여 있다. 각 개구리는 초기 위치 에서 배열의 오른쪽 끝 에 있는 육지에 도착해야 한다.
개구리는 현재 칸에서 좌표가 만큼 증가하는 방향, 즉 오른쪽으로 이동할 수 있다. 이때 현재 칸에 적힌 값만큼 시간이 소모된다. 또한 각 개구리는 최대 한 번 점프할 수 있으며, 점프를 한다면 개구리마다 정해진 하한 값 이상 점프해야 한다.
점프는 좌표가 감소하는 방향, 즉 위쪽으로 이동하는 것이며 시간이 소모되지 않는다.
개구리의 초기 위치와 점프 하한 값이 다음과 같은 쿼리 형태로 주어질 때
- : 개구리의 초기 위치가 이고 최대 한 번 이상의 양의 정수 값 만큼 점프할 수 있을 때, 육지에 도달하는 데 걸리는 최단 시간을 출력하라.
각 쿼리에 대해서 옳은 답을 차례대로 출력하자.
입력
입력의 첫 줄에 차원 배열의 크기를 나타내는 과 개구리의 수 가 공백으로 구분되어 정수로 주어진다.
입력의 두 번째 줄부터 개의 줄에 배열 에 적힌 값이 공백으로 구분되어 정수로 주어진다. 번째 줄의 번째 수는 배열의 번째 행 번째 열의 적힌 값 A\\[i\\]\\[j\\]을 나타낸다. (0 \le A\\[i\\]\\[j\\] \le 10\\,000)
입력의 줄부터 개의 줄에 쿼리가 정수로 주어진다.
출력
개의 줄에 차례대로 쿼리의 정답을 정수로 출력하라.