luogu#P7028. [NWRRC2017] Joker
[NWRRC2017] Joker
题目描述
Joker prepares a new card trick with a strong mathematical background. You are asked to help Joker with calculations.
There is a row of cards with non-zero numbers written on them. Let's call the sum of all positive numbers and the sum of all negative numbers . Every card has a weight if and otherwise.
Let's denote . Joker needs to know positive with the largest If there is more than one such , he is interested in the smallest one.
But static tricks are boring, so Joker wants to change numbers on some cards, and after each change he needs to known where is the largest is.
输入格式
The first line of the input contains two integers and -- the number of cards and the number of changes .
The second line consists of integers -- numbers written on cards at the beginning .
The following lines contain two integers each: and that means value of card at position is changed to ; .
It is guaranteed that at each moment there is at least one card with positive number and at least one card with negative number. The sum of all positive cards will never exceed and the sum of all negative cards will never exceed
输出格式
You should output integers. The first integer is the position of the largest for the initial numbers. Next numbers are positions of the largest after each change.
题目大意
有一个长度为 的数列,第 个元素的值为 ,定义 为数列中所有正整数的和, 为所有负整数的和。定义一个元素的重要值 $w_i=\begin{cases}\dfrac{a_i}{P}&a_i>0\\\dfrac{a_i}{|N|}&\text{otherwise}\end{cases}$,并定义 为前 个元素的重要值之和,即 。
请先求出当前数列中使 最大的 。然后有 次操作,每次操作将某个元素改成一个给定的值,请在每次操作后求出当数列中使 最大的 。
如果有多个满足要求的 ,则答案取最小的。
Translated by Eason_AC
2020.11.15
4 7
1 -5 3 -5
4 -1
2 -1
3 10
4 10
1 -1
2 1
3 -1
3
1
3
3
1
4
4
4
提示
Time limit: 3 s, Memory limit: 512 MB.