codeforces#P1638E. Colorful Operations
Colorful Operations
Description
You have an array $a_1,a_2, \dots, a_n$. Each element initially has value $0$ and color $1$. You are also given $q$ queries to perform:
- Color $l$ $r$ $c$: Change the color of elements $a_l,a_{l+1},\cdots,a_r$ to $c$ ($1 \le l \le r \le n$, $1 \le c \le n$).
- Add $c$ $x$: Add $x$ to values of all elements $a_i$ ($1 \le i \le n$) of color $c$ ($1 \le c \le n$, $-10^9 \le x \le 10^9$).
- Query $i$: Print $a_i$ ($1 \le i \le n$).
The first line of input contains two integers $n$ and $q$ ($1 \le n,q \le 10^6$) — the length of array $a$ and the number of queries you have to perform.
Each of the next $q$ lines contains the query given in the form described in the problem statement.
Print the answers to the queries of the third type on separate lines.
Input
The first line of input contains two integers $n$ and $q$ ($1 \le n,q \le 10^6$) — the length of array $a$ and the number of queries you have to perform.
Each of the next $q$ lines contains the query given in the form described in the problem statement.
Output
Print the answers to the queries of the third type on separate lines.
Samples
5 8
Color 2 4 2
Add 2 2
Query 3
Color 4 5 3
Color 2 2 3
Add 3 3
Query 2
Query 5
2
5
3
2 7
Add 1 7
Query 1
Add 2 4
Query 2
Color 1 1 1
Add 1 1
Query 2
7
7
8
Note
The first sample test is explained below. Blue, red and green represent colors $1$, $2$ and $3$ respectively.