Little Ivica recently got a job delivering pizzas for the most popular pizzeria in town.
At the start of his workday, he receives a list with the locations to which he needs to deliver pizzas, in order in which the locations are given.
The city is divided into cells. The rows are numbered
through
, columns
through
.
From every cell, it is possible to move to neighbouring cells to the left and right. Moving up or down is
only allowed in the first and last columns (columns
and
).
The pizzeria is in the top left corner and this is the location Ivica starts from. Ivica takes with him
all the pizzas he will deliver that day so he does not have to return to the pizzeria between deliveries or
after the last delivery.
For each location in the city, Ivica knows how much time he will spend every time he is in it (trying to get through the intersection, for example).
Write a program that calculates the smallest amount of time for Ivica to deliver all the pizzas.
Input Specification
The first line contains the integers and
, the dimensions of the city.
Each of the following
lines contains
integers. These are the times Ivica spends every time he enters
a location. The times will be integers between
and
, inclusive.
The next line contains an integer
, the number of pizza deliveries that day. (No, it's
not unrealistically large at all.)
Each of the following lines contains two integers
and
, the location to
which a pizza must be delivered. The pizzas are given in the order in which they must be delivered. No
location will be given twice in a row.
Output Specification
Output the smallest amount of time for Ivica to deliver all the pizzas.
Scoring
In test cases worth of points,
will be at most
.
Sample Input 1
3 3
1 8 2
2 3 2
1 0 1
3
1 3
3 3
2 2
Sample Output 1
17
Sample Input 2
2 5
0 0 0 0 0
1 4 2 3 2
4
1 5
2 2
2 5
2 1
Sample Output 2
9
In the first example, the shortest path goes through the following locations:
(1, 1), (2, 1), (3, 1), (3, 2), (3, 3), (2, 3), (1, 3), (2, 3), (3, 3), (2, 3) and (2, 2).
The locations in bold show where Mirko made deliveries.
The total time for the deliveries is .
Comments