#3080. G-茶包博弈

G-茶包博弈

F-茶包博弈

题目描述

在扑克桌上,有 NN 种不同口味的茶包。口味编号为 11 到 NN,第 ii 种口味有 AiA_i 个茶包(1≤i≤N1 \leq i \leq N)。

你将用这些茶包玩一个游戏。该游戏有一个称为难度的参数,取值范围为 11 到 A1+⋯+ANA_1 + \dots + A_N(包含端点)。难度为 bb 的游戏流程如下:

  1. 你选择一个整数 xx,其中 b≤x≤A1+⋯+ANb \leq x \leq A_1 + \dots + A_N。
  2. 庄家从桌上的茶包中选出恰好 xx 个茶包交给你。
  3. 你检查这 xx 个茶包的口味,并从中选出 bb 个茶包。
  4. 如果你选出的 bb 个茶包全部为同一口味(来源于同一个AiA_i),则你获胜;否则你失败。

庄家会尽全力让你失败。

你会得到 QQ 个询问,请分别回答。第 jj 个询问如下:

  • 对于难度为 BjB_j 的游戏,报告你必须在开始时选择的最小整数 xx,以保证获胜。如果无法获胜,则输出 −1-1。

输入格式

输入按如下格式给出:

NN QQ
A1A_1 A2A_2 ⋯\cdots ANA_N
B1B_1
⋮\vdots
BQB_Q

输出格式

输出 QQ 行。

第 jj 行(1≤j≤Q1 \leq j \leq Q)应输出第 jj 个询问的答案。

输入输出样例 #1

输入 #1

4 5
4 1 8 4
1
8
5
2
10

输出 #1

1
17
14
5
-1

输入输出样例 #2

输入 #2

5 3
13 13 13 13 2
5
12
13

输出 #2

19
47
51

说明/提示

样例解释 1

对于第 11 个询问,如果你选择 x=1x=1,那么无论庄家选哪一个茶包,你都可以通过选择这一个茶包来满足获胜条件。由于 xx 不能小于 11,所以答案是 11。

对于第 22 个询问,如果你选择 x=17x=17,那么无论庄家选哪 1717 个茶包,你都可以通过选择合适的 88 个茶包来满足获胜条件。反之,如果 x<17x < 17,庄家可以选择茶包使你无法获胜。因此,答案是 1717。

对于第 33 个询问,如果你选择 x=14x=14,那么无论庄家选哪 1414 个茶包,你都可以通过选择合适的 55 个茶包来满足获胜条件。反之,如果 x<14x < 14,庄家可以选择茶包使你无法获胜。因此,答案是 1414。

对于第 44 个询问,如果你选择 x=5x=5,那么无论庄家选哪 55 个茶包,你都可以通过选择合适的 22 个茶包来满足获胜条件。反之,如果 x<5x < 5,庄家可以选择茶包使你无法获胜。因此,答案是 55。

对于第 55 个询问,无论你选择什么 xx,庄家都可以选择茶包使你无法获胜。因此,输出 −1-1。

数据范围

  • 1≤N≤3×1051 \leq N \leq 3 \times 10^5
  • 1≤Q≤3×1051 \leq Q \leq 3 \times 10^5
  • 1≤Ai≤1061 \leq A_i \leq 10^6(1≤i≤N1 \leq i \leq N)
  • 1≤Bj≤min⁡(106,A1+⋯+AN)1 \leq B_j \leq \min(10^6, A_1 + \dots + A_N)(1≤j≤Q1 \leq j \leq Q)
  • 所有输入均为整数。