eolymp
bolt
Try our new interface for solving problems
Problems

Minimum Cost Paths

Minimum Cost Paths

Farmer John's pasture can be regarded as an n * m 2D grid of square "cells" (picture a huge chessboard). The cell at the x-th row from the top and y-th column from the right is denoted by (x, y) for each x ∈ [1, n], y ∈ [1, m]. Furthermore, for each y ∈ [1, m], the y-th column is associated with the cost cy (1cy109).

Bessie starts at the cell (1, 1). If she is currently located at the cell (x, y), then she may perform one of the following actions:

  • If y < m, Bessie may move to the next column (increasing y by one) for a cost of x2.
  • If x < n, Bessie may move to the next row (increasing x by one) for a cost of cy.

Given q independent queries each of the form (xi, yi) (xi ∈ [1, n], yi ∈ [1, m]), compute the minimum possible total cost for Bessie to move from (1, 1) to (xi, yi).

Input

The first line contains n and m (2n109, 2m2 * 105).

The second line contains m integers c1, c2, ..., cm.

The third line contains q (1q2 * 105).

The last q lines each contain two space-separated integers xi and yi.

Output

Print q lines, containing the answers for each query.

Note that the large size of integers involved in this problem may require the use of 64-bit integer data types (e.g., a "long long" in C/C++).

Example

The output in grid format:

    1  2  3  4
  *--*--*--*--*
1 | 0| 1| 2| 3|
  *--*--*--*--*
2 | 1| 5| 9|13|
  *--*--*--*--*
3 | 2|11|20|29|
  *--*--*--*--*
4 | 3|19|35|49|
  *--*--*--*--*
5 | 4|29|54|69|
  *--*--*--*--*
Time limit 1 second
Memory limit 128 MiB
Input example #1
5 4
1 100 100 20
20
1 1
2 1
3 1
4 1
5 1
1 2
2 2
3 2
4 2
5 2
1 3
2 3
3 3
4 3
5 3
1 4
2 4
3 4
4 4
5 4
Output example #1
0
1
2
3
4
1
5
11
19
29
2
9
20
35
54
3
13
29
49
69
Source 2021 USACO January, Platinum