G - AtCoder Office Editorial /

Time Limit: 5 sec / Memory Limit: 1024 MB

配点 : 575575

問題文

AtCoder 社のオフィスには NN 人の高橋くんが所属しています。

AtCoder 社ではオフィスの入退室の記録が取られており、記録が取られはじめてから MM 回の入退室が行われました。

ii 番目 (1iM)(1\leq i\leq M) の入退室記録は整数の組 (Ti,Pi)(T _ i,P _ i) で表され、時刻 TiT _ iPiP _ i 番目の高橋くんがオフィスの外にいるならオフィスに入ったことを、オフィスの中にいるならオフィスから出たことを表します。

記録が取られはじめた時点ではどの高橋くんもオフィスの外におり、現在どの高橋くんもオフィスの外にいることがわかっています。

次の形式の QQ 個の質問に答えてください。

ii 番目 (1iQ)(1\leq i\leq Q) の質問では整数の組 (Ai,Bi)(A _ i,B _ i) が与えられるので、記録を取っていた間に AiA _ i 番目の高橋くんと BiB _ i 番目の高橋くんがどちらもオフィスの中にいた時間の長さを求めてください。

制約

  • 2N2×1052\leq N\leq2\times10 ^ 5
  • 2M2×1052\leq M\leq2\times10 ^ 5
  • 1T1<T2<<TM1091\leq T _ 1\lt T _ 2\lt\dotsb\lt T _ M\leq10 ^ 9
  • 1PiN (1iM)1\leq P _ i\leq N\ (1\leq i\leq M)
  • どの 1pN1\leq p\leq N についても、Pi=pP _ i=p となる ii は偶数個存在する
  • 1Q2×1051\leq Q\leq2\times10 ^ 5
  • 1Ai<BiN (1iQ)1\leq A _ i\lt B _ i\leq N\ (1\leq i\leq Q)
  • 入力はすべて整数

入力

入力は以下の形式で標準入力から与えられる。

NN MM
T1T _ 1 P1P _ 1
T2T _ 2 P2P _ 2
\vdots
TMT _ M PMP _ M
QQ
A1A _ 1 B1B _ 1
A2A _ 2 B2B _ 2
\vdots
AQA _ Q BQB _ Q

出力

QQ 行にわたって出力せよ。 ii 行目 (1iQ)(1\leq i\leq Q) には ii 番目の質問に対する答えを出力せよ。


入力例 1Copy

Copy
3 8
10 1
20 2
30 1
40 3
60 3
70 1
80 2
90 1
3
1 2
1 3
2 3

出力例 1Copy

Copy
20
0
20

33 人の高橋くんがオフィスの中にいた時間はそれぞれ以下の図のようになります。

それぞれの質問に対する答えは以下のようになります。

  • 11 番目の高橋くんと 22 番目の高橋くんが同時にオフィスの中にいた時間は、時刻 2020 から時刻 3030 の間と時刻 7070 から時刻 8080 の間の 22 回です。長さはどちらも 1010 なので、これらの合計である 2020 を出力してください。
  • 11 番目の高橋くんと 33 番目の高橋くんが同時にオフィスの中にいたことはありません。よって、00 を出力してください。
  • 22 番目の高橋くんと 33 番目の高橋くんが同時にオフィスの中にいた時間は、時刻 4040 から時刻 6060 の間の 11 回です。長さは 2020 なので、2020 を出力してください。

入力例 2Copy

Copy
10 20
10257 9
10490 4
19335 1
25893 5
32538 9
33433 3
38522 9
40629 9
42896 5
52106 1
53024 3
55610 5
56721 9
58286 9
63128 3
70513 3
70977 4
74936 5
79883 9
95116 9
7
1 3
3 9
1 9
4 9
1 5
5 9
3 5

出力例 2Copy

Copy
18673
2107
15310
25720
17003
10317
16848

Score : 575575 points

Problem Statement

NN people work at the AtCoder office.

The office keeps records of entries and exits, and there have been MM entries and exits since the records began.

The ii-th (1iM)(1\leq i\leq M) record is represented by a pair of integers (Ti,Pi)(T_i, P_i), indicating that at time TiT_i, the PiP_i-th person either entered the office if they were outside, or exited the office if they were inside.

It is known that all people were outside the office at the beginning of the records, and they are outside now.

Answer QQ queries in the following format.

For the ii-th (1iQ)(1\leq i\leq Q) query, you are given a pair of integers (Ai,Bi)(A_i, B_i). Find the total length of the periods during which both the AiA_i-th and BiB_i-th persons were inside the office since the records began.

Constraints

  • 2N2×1052\leq N\leq2\times10^5
  • 2M2×1052\leq M\leq2\times10^5
  • 1T1<T2<<TM1091\leq T_1\lt T_2\lt\dotsb\lt T_M\leq10^9
  • 1PiN (1iM)1\leq P_i\leq N\ (1\leq i\leq M)
  • For every 1pN1\leq p\leq N, the number of indices ii such that Pi=pP_i=p is even.
  • 1Q2×1051\leq Q\leq2\times10^5
  • 1Ai<BiN (1iQ)1\leq A_i\lt B_i\leq N\ (1\leq i\leq Q)
  • All inputs are integers.

Input

The input is given from Standard Input in the following format:

NN MM
T1T_1 P1P_1
T2T_2 P2P_2
\vdots
TMT_M PMP_M
QQ
A1A_1 B1B_1
A2A_2 B2B_2
\vdots
AQA_Q BQB_Q

Output

Print QQ lines. The ii-th line (1iQ)(1\leq i\leq Q) should contain the answer to the ii-th query.


Sample Input 1Copy

Copy
3 8
10 1
20 2
30 1
40 3
60 3
70 1
80 2
90 1
3
1 2
1 3
2 3

Sample Output 1Copy

Copy
20
0
20

The following diagram shows the time each of the three people spent inside the office.

The answers to each query are as follows:

  • The 1st and 2nd persons were both inside the office from time 2020 to time 3030 and from time 7070 to time 8080. The lengths of these two periods are both 1010, so print the total, which is 2020.
  • The 1st and 3rd persons were never inside the office at the same time, so print 00.
  • The 2nd and 3rd persons were both inside the office from time 4040 to time 6060. The length of this period is 2020, so print 2020.

Sample Input 2Copy

Copy
10 20
10257 9
10490 4
19335 1
25893 5
32538 9
33433 3
38522 9
40629 9
42896 5
52106 1
53024 3
55610 5
56721 9
58286 9
63128 3
70513 3
70977 4
74936 5
79883 9
95116 9
7
1 3
3 9
1 9
4 9
1 5
5 9
3 5

Sample Output 2Copy

Copy
18673
2107
15310
25720
17003
10317
16848


2025-04-03 (Thu)
11:50:42 +00:00