AT_abc418_c.[ABC418C] Flush
普及-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在扑克桌上,有 N 种不同口味的茶包。口味编号为 1 到 N,第 i 种口味有 Ai 个茶包(1≤i≤N)。
你将用这些茶包玩一个游戏。该游戏有一个称为难度的参数,取值范围为 1 到 A1+⋯+AN(包含端点)。难度为 b 的游戏流程如下:
- 你声明一个整数 x,其中 b≤x≤A1+⋯+AN。
- 庄家从桌上的茶包中选出恰好 x 个茶包交给你。
- 你检查这 x 个茶包的口味,并从中选出 b 个茶包。
- 如果你选出的 b 个茶包全部为同一口味,则你获胜;否则你失败。
庄家会尽全力让你失败。
你会得到 Q 个询问,请分别回答。第 j 个询问如下:
- 对于难度为 Bj 的游戏,报告你必须在开始时声明的最小整数 x,以保证获胜。如果无法获胜,则输出 −1。
输入格式
输入按如下格式给出:
N Q
A1 A2 ⋯ AN
B1
⋮
BQ
输出格式
输出 Q 行。
第 j 行(1≤j≤Q)应输出第 j 个询问的答案。
输入输出样例
输入#1
4 5 4 1 8 4 1 8 5 2 10
输出#1
1 17 14 5 -1
输入#2
5 3 13 13 13 13 2 5 12 13
输出#2
19 47 51
说明/提示
样例解释 1
对于第 1 个询问,如果你声明 x=1,那么无论庄家选哪一个茶包,你都可以通过选择这一个茶包来满足获胜条件。由于 x 不能小于 1,所以答案是 1。
对于第 2 个询问,如果你声明 x=17,那么无论庄家选哪 17 个茶包,你都可以通过选择合适的 8 个茶包来满足获胜条件。反之,如果 x<17,庄家可以选择茶包使你无法获胜。因此,答案是 17。
对于第 3 个询问,如果你声明 x=14,那么无论庄家选哪 14 个茶包,你都可以通过选择合适的 5 个茶包来满足获胜条件。反之,如果 x<14,庄家可以选择茶包使你无法获胜。因此,答案是 14。
对于第 4 个询问,如果你声明 x=5,那么无论庄家选哪 5 个茶包,你都可以通过选择合适的 2 个茶包来满足获胜条件。反之,如果 x<5,庄家可以选择茶包使你无法获胜。因此,答案是 5。
对于第 5 个询问,无论你声明什么 x,庄家都可以选择茶包使你无法获胜。因此,输出 −1。
数据范围
- 1≤N≤3×105
- 1≤Q≤3×105
- 1≤Ai≤106(1≤i≤N)
- 1≤Bj≤min(106,A1+⋯+AN)(1≤j≤Q)
- 所有输入均为整数。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?