No.2421 entersys?
タグ : / 解いたユーザー数 78
作問者 : dyktr_06 / テスター : 👑 Nafmo2 LaFolia13 hikikomori sepa38 Seed57_cash Udon ryota2357
問題文
MMA の部室では、entersys というシステムを用いて入退室の管理を行なっています。
entersys によると、今までに判明している情報で少なくとも $N$ 回の入退室が行われており、部員 ID が $X_i$ の部員は、時刻 $L_i -0.1$ から $R_i + 0.1$ の間まで部室にいたという情報が与えられています。
$Q$ 個のクエリが与えられるため順番に処理してください。
クエリは次の $3$ 種類のいずれかです。
1 x t
: 与えられた情報をもとに、部員 ID が $x$ の部員が時刻 $t$ の時点で部室にいることが判明しているならばYes
、いないならばNo
と出力する。2 t
: 与えられた情報をもとに、時刻 $t$ に入室していることが判明している部員の人数を出力する。3 x l r
: 部員 ID が $x$ の部員は、時刻 $l - 0.1$ から $r + 0.1$ の間まで部室にいたという情報が新たに与えられる。
なお、同じ部員 ID の情報について、与えられた情報と時刻が重なるような情報は与えられません。
制約
- $1 \leq N, Q \leq 10^{5}$
- $X_i$ は長さ $5$ 以下の英小文字からなる文字列
- $1 \leq L_i \leq R_i \leq 10^{9}$
- $x$ は長さ $5$ 以下の英小文字からなる文字列
- $1 \leq t \leq 10^{9}$
- $1 \leq l \leq r \leq 10^{9}$
- ある部員 ID の情報について、与えられた情報と時刻が重なるような情報は与えられない。
- $N, L_i, R_i, Q, t, l, r$ は整数である。
入力
入力は以下の形式で標準入力から与えられる。
$N$ $X_1$ $L_1$ $R_1$ $X_2$ $L_2$ $R_2$ $\vdots$ $X_N$ $L_N$ $R_N$ $Q$ query $1$ query $2$ $\vdots$ query $Q$
各クエリは以下に示す $3$ つの形式のいずれかが与えられる。
$1$ $x$ $t$
$2$ $t$
$3$ $x$ $l$ $r$
出力
$1, 2$ のクエリの個数を $q$ として、$q$ 行出力せよ。
$j$ $(1 \leq j \leq q)$ 行目では $j$ 番目のそのようなクエリに対する答えを出力せよ。
サンプル
サンプル1
入力
5 dyktr 6 15 nafmo 1 20 sepa 11 20 mma 2 6 mma 12 14 5 1 dyktr 5 1 dyktr 6 2 15 3 ryota 3 18 2 15
出力
No Yes 3 4
$1, 2$ 番目のクエリについて、今までに与えられた情報によると、部員 ID が dyktr
であるような部員が部室にいることが判明している時刻は $5.9$ から $15.1$ となります。
$3$ 番目のクエリについて、今までに与えられた情報によると、時刻が $15$ のときに部室にいることが判明している部員は $3$ 人で、それぞれの部員 ID は dyktr
, nafmo
, sepa
です。
$5$ 番目のクエリについて、今までに与えられた情報によると、時刻が $15$ のときに部室にいることが判明している部員は $4$ 人で、それぞれの部員 ID は dyktr
, nafmo
, sepa
, ryota
です。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。