编程题
龙虎斗 ### 题目描述 轩轩和凯凯正在玩一款叫《龙虎斗》的游戏,游戏的棋盘是一条线段,线段上有 $n$ 个兵营(自左至右编号 1 ~ $n$),相邻编号的兵营之间相隔 1 厘米,即棋盘为长度为 $n$ − 1 厘米的线段。$i$ 号兵营里有 $c_i$ 位工兵。 下图为 $n$ = 6 的输入描述 ![](https://doc.shiyanlou.com/courses/uid1580206-20210202-1612253814018) 轩轩在左侧,代表"龙";凯凯在右侧,代表"虎"。 他们以 $m$ 号兵营作为分界,靠左的工兵属于龙势力,靠右的工兵属于虎势力,而第 $m$ 号兵营中的工兵很纠结,他 们不属于任何一方。 一个兵营的气势为:该兵营中的工兵数 $\times$ 该兵营到 $m$ 号兵营的距离;参与游戏一方的势力定义为:属于这一方所有兵营的气势之和。 如下图为 $n$ = 6, $m$ = 4 的输入描述,其中红色为龙方,黄色为虎方: ![](https://doc.shiyanlou.com/courses/uid1580206-20210202-1612253819956) 游戏过程中,某一刻天降神兵,共有 $s_1$ 位工兵突然出现在了 $p_1$ 号兵营。作为轩轩和凯凯的朋友,你知道如果龙虎双方气势差距太悬殊,轩轩和凯凯就不愿意继续玩下去了。为了让游戏继续,你需要选择一个兵营 $p_2$,并将你手里的 $s_2$ 位工兵全部派往 兵营 $p_2$,使得双方气势差距尽可能小。 注意:你手中的工兵落在哪个兵营,就和该兵营中其他工兵有相同的势力归属(如果落在 $m$ 号兵营,则不属于任何势力)。 ### 输入描述 第一行包含一个正整数 $n$,代表兵营的数量。 接下来的一行包含 $n$ 个正整数,相邻两数之间以一个空格分隔,第 $i$ 个正整数代表编号为 $i$ 的兵营中起始时的工兵数量 $c_i$。 接下来的一行包含四个正整数,相邻两数间以一个空格分隔,分别代表 $m, p_1, s_1, s_2$。 其中,$n \leq 10^5, c_i ,s_1, s_2 \leq 10^9$。 ### 输出描述 输出一行,包含一个正整数,即 $p_2$,表示你选择的兵营编号。如果存在多个编号同时满足最优,取最小的编号。 ### 输入输出样例 #### 示例 > 输入 ```txt 6 2 3 2 3 2 3 4 6 5 2 ``` > 输出 ```txt 2 ```
查看答案
赣ICP备20007335号-2