QOJ.ac

QOJ

时间限制: 2.0 s 内存限制: 256 MB 总分: 100 可 Hack ✓

#17743. マルチセット

统计

Busy Beaver はデータ構造の問題が好きですが、配列に対する区間クエリを扱うデータ構造の問題は退屈だと考えています。そこで彼は、多重集合(multiset)を用いた一風変わったデータ構造の問題を考案しました。

$a_1, \dots, a_L$ という数列があり、各 $a_i$ は正の整数の多重集合です。最初、数列は空であり、$L=0$ です。以下の操作を実装してください。

  • 1 M K: 数 $M$ が $K$ 個含まれる多重集合を数列の末尾に追加する。
  • 2 X Y: $a_X$ と $a_Y$ のを数列の末尾に追加する。各値の出現回数が加算されます。例えば、多重集合 $\{1, 1, 2\}$ と $\{1, 2\}$ の和は $\{1, 1, 1, 2, 2\}$ と定義されます。
  • 3 X M K: $f(a_X, M, K)$ を数列の末尾に追加する。ここで $f(S, M, K)$ は、$S$ に $M$ が $K$ 個以上含まれる場合は $S$ から $M$ を $K$ 個取り除いたもの、そうでない場合は $S$ に $M$ を $K$ 個追加したものとして定義される。
  • 4 X: $a_X$ は単一の要素のみからなることが保証される。 この $a_X$ の単一の要素を出力する。

入力

入力の最初の行には、操作の回数を表す整数 $Q$ ($1 \le Q \le 5 \cdot 10^5$) が与えられます。

続く $Q$ 行には、各操作が記述されています。

以下のことが保証されます。

  • 操作 2, 3, 4 で使用されるインデックス $X$ および $Y$ は、操作時点で常に数列の範囲内である。
  • 操作 1 および 3 で使用される値 $M$ および $K$ は、$1 \le M, K \le 10^9$ を満たす。
  • すべてのタイプ 4 の操作において、$a_X$ はちょうど 1 つの要素を含む。

出力

各タイプ 4 の操作について、答えを 1 行で出力してください。

小課題

  • ($10$ 点) すべてのタイプ 1 および 3 の操作において $1 \le M \le 10$。
  • ($40$ 点) すべてのタイプ 3 の操作において、新しく追加される多重集合は $a_X$ から $M$ を $K$ 個取り除くことで形成されることが保証される。
  • ($50$ 点) 追加の制約はない。

入出力例

入力 1

8
1 5 1
1 6 2
4 1
2 1 2
3 3 6 4
3 4 6 5
3 5 5 1
4 6

出力 1

5
6

注記

多重集合は以下の通りです。

  • $a_1 = \{5\}$
  • $a_2 = \{6, 6\}$
  • $a_3 = \{5, 6, 6\}$
  • $a_4 = \{5, 6, 6, 6, 6, 6, 6\}$
  • $a_5 = \{5, 6\}$
  • $a_6 = \{6\}$

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.