No.2611 Count 01
レベル : / 実行時間制限 : 1ケース 6.000秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 36
作問者 :
蜜蜂
/ テスター :
Mitarushi
タグ : / 解いたユーザー数 36
作問者 :

問題文最終更新日: 2024-01-19 19:03:37
問題文
以下では、 0
と 1
のみからなる文字列を 列と呼びます。
列 に対し、 を が含む 0
の数と 1
の数の積とします。
また を以下のように定めます。
- として 通りある の連続部分文字列 全てについて、 を足し合わせた値。
長さ の 列 が与えられます。 個のクエリが与えられるので、順に処理してください。
クエリは次の 種類のいずれかです。
1 i
: の 文字目を入れ替える。すなわち 文字目が0
なら1
に、1
なら0
にする。(変更クエリ)2 l r
: の 文字目から 文字目までの部分文字列を とする。 を で割った余りを出力する。(出力クエリ)
入力
各クエリでの入力は以下に示す つの形式のいずれかです。
1 i
2 l r
- は長さ の 列
- は全て整数
- 出力クエリは 個以上与えられる
出力
出力クエリが 個あるとして 行出力してください。 行目には出力クエリの中で 番目のクエリに対応する答えを出力してください。
サンプル
サンプル1
入力
6 6
010110
2 1 3
1 3
2 4 5
1 5
2 4 5
2 1 1
出力
4
0
1
0
- 番目のクエリにおいて は
010
なので です。 - 番目のクエリの後、 は
011110
です。 - 番目のクエリにおいて は
11
なので です。 - 番目のクエリの後、 は
011100
です。 - 番目のクエリにおいて は
10
なので です。 - 番目のクエリにおいて は
0
なので です。
サンプル2
入力
1 5
0
1 1
2 1 1
2 1 1
1 1
2 1 1
出力
0
0
0
サンプル3
入力
38 17 00011111001010001001101100101011101110 2 12 19 1 8 2 25 36 1 19 2 1 11 2 1 3 2 6 33 2 14 21 1 8 2 7 12 2 5 36 2 29 35 2 17 18 1 16 1 9 2 11 25 1 27
出力
100 529 387 0 14391 112 43 24138 64 1 1236
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。