#L3460. 「USACO 2021.1 Platinum」Minimum Cost Paths

「USACO 2021.1 Platinum」Minimum Cost Paths

题目描述

题目来自 USACO 2021 January Contest, Platinum Problem 2. Minimum Cost Paths。

Farmer John 的牧草地可以看作是一个 N×MN \times M2N1092 \le N \le 10^92M2×1052 \le M \le 2 \times 10^5)的正方形方格组成的二维方阵(想象一个巨大的棋盘)。对于 x[1,N],y[1,M]x \in [1, N], y \in [1, M],从上往下第 xx 行、从左往右第 yy 列的方格记为 (x,y)(x, y)。此外,对于每一个 y[1,M]y \in [1, M],第 yy 列拥有一个代价 cyc_y1cy1091 \le c_y \le 10^9)。

Bessie 从方格 (1,1)(1, 1) 出发。如果她现在位于方格 (x,y)(x, y),则她可以执行以下操作之一:

  • 如果 y<My \lt M,Bessie 可以以 x2x^2 的代价移动到下一列(yy 增加一)。
  • 如果 x<Nx \lt N,Bessie 可以以 cyc_y 的代价移动到下一行(xx 增加一)。

给定 QQ1Q2×1051 \le Q \le 2 \times 10^5)个独立的询问,每个询问给定 (xi,yi)(x_i, y_i)xi[1,N]x_i \in [1, N]yi[1,M]y_i \in [1, M]),计算 Bessie 从 (1,1)(1, 1) 移动到 (xi,yi)(x_i, y_i) 的最小总代价。

输入格式

输入的第一行包含 NNMM

第二行包含 MM 个空格分隔的整数 c1,c2,,cMc_1, c_2, \ldots , c_M

第三行包含 QQ

最后 QQ 行每行包含两个空格分隔的整数 xix_iyiy_i

输出格式

输出 QQ 行,为每个询问的答案。

注意:本题计算中所使用的整数大小可能需要使用 64 位整数型(例如,C/C++ 中的 long long)。

样例

输入 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

text

输出 0 1 2 3 4 1 5 11 19 29 2 9 20 35 54 3 13 29 49 69

text

输出以方阵形式表示如下:

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

数据范围与提示

  • 测试点 131 \sim 3 满足 N,M2000N, M \le 2000
  • 测试点 484 \sim 8 满足 c2>c3>>cMc_2 \gt c_3 \gt \cdots \gt c_M
  • 测试点 9159 \sim 15 满足 N2×105N \le 2 \times 10^5
  • 测试点 162016 \sim 20 没有额外限制。