ビ太郎は,誕生日プレゼントとしてJOI マシンをもらった.JOI マシンは,1 個のボール,N 個のライ
トタイル,M 個のボタンからなる.ライトタイルにはそれぞれ1 からN までの番号が付けられており,電
源を入れると,ライトタイルi (1 ≦i ≦N) は色Ci (青(B),赤(R) のいずれか) で光るようになっている.ま
た,ボタンにはそれぞれ1 からM までの番号が付けられており,ボタンj (1 ≦j ≦M) を押すと,次のよう
なことが起こる.
1. ライトタイルAj の上にボールが置かれる.
2. ライトタイルAj の色が(元の色にかかわらず) 赤になる.
3. ボールが取り除かれるまで,以下のことが繰り返し行われる.
今,ボールが置かれているライトタイルの番号をp とする.
ライトタイルp の色が青の場合
ライトタイルp の色が赤に変わる.その後,もしp = 1 の場合はボールが取り除かれ,そう
でない場合はボールがライトタイルp −1 の上に移動する.
ライトタイルp の色が赤の場合
ライトタイルp の色が青に変わる.その後,もしp = N の場合はボールが取り除かれ,そ
うでない場合はボールがライトタイルp + 1 の上に移動する.
JOI マシンに興味を持ったビ太郎は,Q 回の実験を計画している.k 回目(1 ≦k ≦Q) の実験は,JOI マシ
ンの電源を入れた後,ボタンLk, Lk + 1, . . . , Rk をこの順に押すというものである.ただし,ボールが取り除
かれるまでは,次のボタンを押さずに待つものとする.
JOI マシンの情報および実験の情報が与えられるので,それぞれの実験について,実験が終わった後にお
ける,色が赤であるようなライトタイルの個数を求めるプログラムを作成せよ.
第22 回日本情報オリンピック(JOI 2022/2023) 本選
2023 年2 月12 日(オンライン開催)
• 3 ≦N ≦120 000.
• 1 ≦M ≦120 000.
• Ci (1 ≦i ≦N) はB またはR である.
• 1 ≦Aj ≦N (1 ≦j ≦M).
• 1 ≦Q ≦120 000.
• 1 ≦Lk ≦Rk ≦M (1 ≦k ≦Q).
• N, M, Aj, Q, Lk, Rk は整数である.
第22 回日本情報オリンピック(JOI 2022/2023) 本選
2023 年2 月12 日(オンライン開催)
- (3 点) N ≦300,M ≦300,Q = 1.
- (12 点) N ≦7 000,M ≦7 000,Q = 1.
- (10 点) Q ≦5.
- (11 点) N = 10,Ci はR である(1 ≦i ≦N).
- (26 点) i ≦t ならばCi がR であり,i > t であればCi がB であるような整数t (0 ≦t ≦N) が存在
する. - (17 点) Aj ≦20 またはAj > N −20 (1 ≦j ≦M).
- (21 点) 追加の制約はない.
第22 回日本情報オリンピック(JOI 2022/2023) 本選
2023 年2 月12 日(オンライン開催)
入力は以下の形式で標準入力から与えられる.
N M
C1C2 · · ·CN
A1 A2 · · · AM
Q
L1 R1
L2 R2
...
LQ RQ
標準出力にQ 行出力せよ.k 行目(1 ≦k ≦Q) には,k 回目の実験が終わった後における,色が赤である
ようなライトタイルの個数を出力せよ.
5 1
RBRRB
4
1
1 1
1
5 3
RBRBR
1 3 4
2
2 3
1 3
5
0
10 3
BBRRBRBRRB
2 10 5
1
1 3
2
10 10
RRRRRRRRRR
3 1 4 1 5 9 2 6 5 3
5
1 7
2 8
3 9
4 10
1 10
4
8
10
0
9
10 10
RRRBBBBBBB
3 1 4 1 5 9 2 6 5 3
5
1 10
2 9
3 8
4 7
5 6
2
6
0
10
7
30 10
RRRBBRBBBRBBBRBRBRRRRRBBBBRBRR
3 28 2 29 1 30 6 14 7 7
10
1 10
2 3
2 5
2 8
3 3
3 6
4 5
4 7
5 9
10 10
21
15
15
4
17
16
14
20
12
23