33OJ
登录 注册

#ABC479D. 往返距离 / Back and Forth Distance

往返距离 / Back and Forth Distance

题目描述

有 NN 个方格排成一行,从左到右编号为 1,2,…,N1, 2, \ldots, N。

当你位于方格 ii 时,可以进行以下移动之一。

  • 选择一个满足 1≤j<i1 \leq j < i 的整数 jj,移动到方格 jj。该移动的代价为 LiL_i。
  • 选择一个满足 i<j≤Ni < j \leq N 的整数 jj,移动到方格 jj。该移动的代价为 RiR_i。

给定 QQ 个查询,请逐一回答。每个查询的格式如下。

  • 给定整数 ss 和 tt。求从方格 ss 出发,通过反复移动到达方格 tt 所需的最小总代价。

输入格式

输入按以下格式从标准输入读入:

  • NN QQ
  • L2L_2 L3L_3 …\ldots LNL_N
  • R1R_1 R2R_2 …\ldots RN−1R_{N - 1}
  • query1\text{query}_1
  • query2\text{query}_2
  • ⋮\vdots
  • queryQ\text{query}_Q

其中,queryi\text{query}_i 是第 ii 个查询,格式如下:

  • ss tt

输出格式

输出 QQ 行。

第 ii 行应包含第 ii 个查询的答案。

5 7
5 6 2 9
3 1 3 8
1 2
2 1
2 4
3 2
3 5
4 3
5 2
3
3
1
5
3
2
9

下面解释第 1 个和第 2 个查询。

对于第 1 个查询,如果从方格 11 直接移动到方格 22,总代价为 R1=3R_1 = 3,这是可能的最小总代价。

对于第 2 个查询,如果从方格 22 移动到方格 44,再从方格 44 移动到方格 11,总代价为 R2+L4=3R_2 + L_4 = 3,这是可能的最小总代价。

数据范围

  • 2≤N≤3×1052 \leq N \leq 3 \times 10^5

  • 1≤Q≤3×1051 \leq Q \leq 3 \times 10^5

  • 1≤Li≤1091 \leq L_i \leq 10^9 (2≤i≤N)(2 \leq i \leq N)

  • 1≤Ri≤1091 \leq R_i \leq 10^9 (1≤i≤N−1)(1 \leq i \leq N - 1)

  • 每个查询中 1≤s,t≤N1 \leq s, t \leq N。

  • 每个查询中 s≠ts \neq t。

  • 所有输入值均为整数。

  • 来源:AtCoder ABC 479 D

子任务设置

  • 子任务 1(30 分):N,Q≤2000N, Q \le 2000。
  • 子任务 2(70 分):无特殊限制。