#P13719. [GCPC 2024] Dark Alley

[GCPC 2024] Dark Alley

题目描述

One cold and foggy night, you walk down a shady alley. There should be a lamp every few metres but none of them seem to work, and in this night, not even the moon enlightens your path. Alone and in the dark, you wonder: "Even if there was a working lamp somewhere, how much would it lighten my way". Now, back at home, you want to calculate this.

:::align{center} A foggy alley. Photo by Henryk Niestrój

:::

The alley can be modelled as a line with a length of nn metres. The fog has a uniform density and reduces the light of a lamp by a factor of 1p1-p every metre. The brightness at one point is the sum of the light that reaches this point from every lamp. You want to calculate this brightness at some points after placing some lamps.

输入格式

The input consists of:

  • One line with two integers nn and qq and one real number pp (1n,q2105,0<p<11\leq n, q\leq 2\cdot10^5, 0 < p < 1), the length of the alley, the number of queries and the density of the fog. The density pp of the fog will be given with at most 66 digits behind the decimal point.

  • qq lines containing one of three query types:

    1. "+ b x\texttt{+ b x}" given two integers bb and xx (1b1091\leq b \leq 10^9 and 1xn1\leq x \leq n), place a lamp with brightness bb at position xx.
    2. "- b x\texttt{- b x}" given integers bb and xx (1b1091\leq b \leq 10^9 and 1xn1\leq x \leq n), remove a lamp with brightness bb at position xx. It is guaranteed that a lamp with that brightness was placed there earlier.
    3. "? x\texttt{? x}" given one integer xx (1xn1\leq x \leq n), calculate the brightness at position xx.

输出格式

It can be shown that the brightness can be calculated as a fraction PQ\frac{P}{Q} where QQ is not divisible by 109+710^9+7. For each query of type "?\texttt{?}", print the brightness as PQ1mod109+7P\cdot Q^{-1} \bmod 10^9+7 in a single line.

5 6 0.25
+ 4 2
? 1
? 2
? 3
? 4
? 5
3
4
3
250000004
187500003
5 7 0.33
+ 9 1
? 5
+ 4 3
? 2
? 5 
- 9 1
? 2
312342734
470000012
341542736
760000008

提示

In the first sample case, the brightness in the alley after placing the lamp will look like this:

33 44 33 2.252.25 1.68751.6875