問題一覧 > 通常問題

No.3094 Stapler

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 46
作問者 : RiRinbaru / テスター : hamo21 autumn09 downer 👑 ygussany
3 ProblemId : 12037 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2025-04-06 16:46:26

問題文

紙が $N$ 枚重なっています。ステープラーを用いることによって、重なって隣り合っている紙同士をつなげることができます。つながった紙同士はまとまり、それらをつなげるのに使った針すべてを取り除くまでまとまったままになります。
$Q$ 個のクエリが与えられます。それぞれについて順に処理してください。

  • 1 L R: 上から $L$ 枚目の紙と上から $R$ 枚目の間にある紙をステープラーで止める
  • 2 q: $q$ 番目のクエリで止めるのに使った針を取り除く( $q$ 番目のクエリはクエリ $1$ であることが保証される)
  • 3: 現在の紙のまとまりの個数を出力する

入力

入力は以下のように与えられます。

$N$
$Q$
$ \mathrm{query}_1 $
$ \mathrm{query}_2 $
$:$
$ \mathrm{query}_Q $

(15:47 問題文を修正いたしました。)

  • $1\leq N\leq 10^6$
  • $1\leq Q\leq 10^5$
  • 入力はすべて整数

それぞれのクエリについて、まずクエリの種類 $c_i (=1, 2, 3)$ が与えられます。クエリ $1$ の場合はさらに整数 $L, R$ が、クエリ $2$ の場合は整数 $q$ が追加で与えられます。
すなわち各クエリは以下に示す $3$ つの形式のいずれかで与えられます。

(16:45 問題文を修正いたしました。)

$1\ L\ R$
$2\ q$
$3$

(16:18 クエリ1について、$L\leq R$ を満たします。)

(16:41 クエリ1について、$1\leq L\leq R\leq N$ を満たします。)

出力

クエリ3のそれぞれが与えられたときの答えを順に出力してください。
最後に改行してください。

サンプル

サンプル1
入力
7
9
1 3 5
1 2 4
3
1 5 7
3
2 1
3
2 4
3
出力
4
2
3
5

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。