문제 108
평면의 점 가중치와 직사각형 합
평면에 서로 다른 $N$개의 점이 주어진다. 각 점의 가중치는 처음에 $0$이다. 다음 $Q$개의 쿼리를 순서대로 처리해 보자.
- $0\ x\ y\ v$: 점 $(x,y)$의 가중치에 $v$를 더한다.
- $1\ x_1\ y_1\ x_2\ y_2$: $x_1\le x<x_2$와 $y_1\le y<y_2$를 만족하는 점 $(x,y)$의 가중치 합을 구한다.
- $2\ x_0\ y_0$: $x<x_0$과 $y<y_0$을 만족하는 점 $(x,y)$의 가중치 합을 구한다.
$0$번 쿼리의 점은 처음 주어진 점 중 하나이다. $1$번 쿼리에서 $x_1\ge x_2$ 또는 $y_1\ge y_2$이면 답은 $0$이다.
입력
첫 번째 줄에 두 정수 $N$, $Q$가 공백으로 구분되어 주어진다. $(1 \le N, Q \le 200\,000)$
두 번째 줄부터 $N$개의 줄에 걸쳐 각 점의 좌표를 나타내는 두 정수 $x$, $y$가 공백으로 구분되어 주어진다. $(-10^9 \le x, y \le 10^9)$
그다음 줄부터 $Q$개의 줄에 걸쳐 본문에서 설명한 형식의 쿼리가 주어진다. 각 쿼리의 정수는 공백으로 구분되어 주어진다. 쿼리에 주어지는 각 좌표를 $c$라 한다. $(-10^9-1 \le c \le 10^9+1; -10^9 \le v \le 10^9)$
출력
$1$번과 $2$번 쿼리의 답을 쿼리가 주어진 순서대로 한 줄에 하나씩 출력한다.
예제 입력 1
3 8 0 0 2 3 -1 4 2 1 1 0 0 0 7 0 2 3 -4 1 -1 -1 3 4 2 2 4 0 -1 4 9 1 -1 4 0 5 1 3 5 -2 0
예제 출력 1
0 3 7 9 0