题单练习 挑战赛 普及/提高- 题

A5150 | 午枫的双人挑战

时间限制1s
内存限制128MB
通过 / 提交0/0

题目描述

小午和小枫正在玩一个需要双人互相配合的解谜动作游戏,目前游戏有 $n$ 个关卡,每个关卡分为解密和战斗两个部分,其中小午负责解密部分,小枫负责战斗部分。小午完成第 $i$ 关的解密部分的时间是 $a_i$ ,小枫完成第 $i$ 关的战斗部分的时间是 $b_i$ 。

当一个人在进行一个关卡的解密或战斗部分时,另一个人是无法行动的。起初他们只能进行第 $1$ 个关卡。这个游戏每关的战斗部分与解密部分环环相扣,不同关卡之间的解密部分也环环相扣。具体地来说,在进行第 $i$ 个关卡的战斗部分之前,需要先完成第 $i$ 个关卡的解密部分;如果要进行第 $i$ 个关卡的解密部分,需要完成第 $i-1$ 个关卡的解密部分。

他们现在正在进行直播挑战,观众们给了他们 $q$ 个挑战,每个挑战要求他们以最短的时间完成 $k$ 个关卡。请你帮他们计算每个挑战的最短用时是多少。

输入格式

第一行输入 $2$ 个正整数 $n,q$ $(1\leq n\leq 2\times 10^5,1\leq q \leq 100)$ ,分别表示关卡个数和挑战个数。

第二行输入 $n$ 个正整数 $a_i$ $(1\leq a_i\leq 10^9)$,表示小午完成第 $i$ 个关卡的解密部分的时间。

第三行输入 $n$ 个正整数 $b_i$ $(1\leq b_i\leq 10^9)$,表示小枫完成第 $i$ 个关卡的战斗部分的时间。

接下来 $q$ 行,每行输入一个正整数 $k$ $(1\leq k\leq n)$ ,表示挑战完成的关卡个数。

输出格式

对于每个挑战输出一行一个整数,表示这个挑战花费的最短时间。

输入输出样例

输入 #1
5 3
1 2 3 4 5
5 2 1 2 3
1
2
4
输出 #1
5
9
20
C++ 编辑器
输入
输出