辞書(Dictionary)の操作
空の辞書と
n
個のクエリが与えられます。各クエリは、次のいずれかのタイプになります:- タイプ1: 文字列を辞書に挿入する。
- タイプ2: 文字列が辞書内に存在するかを確認する。
このプログラムの目的は、与えられたクエリを効率的に処理することです。
タイプ2のクエリが与えられた場合、文字列が辞書に存在すれば
Yes
、存在しなければ No
を出力してください。 入力
入力は複数の行から構成されます。最初の行には整数
q
(1 ≤ q ≤ ) が与えられ、これはクエリの数を表します。続く
q
行はクエリを示し、各行は先頭に整数 type (1 または 2) を持ちます。- もし type = 1 の場合、続けて文字列
s
(1 ≤ |s| ≤ 1000) が与えられます。この文字列は辞書に挿入される文字列で、英小文字のみで構成されます。
- もし type = 2 の場合、続けて文字列
s
(1 ≤ |s| ≤ 1000) が与えられます。この文字列は辞書に登録されているか確認するための文字列で、英小文字のみで構成されます。
さらに、すべてのクエリ文字列の長さの合計が を超えないことが保証されています。
出力
タイプ2のクエリが与えられた場合、文字列が存在するなら
Yes
、存在しないなら No
を出力してください。 例
入力 | 出力 |
5
1 abc
1 xyz
2 cba
1 def
2 xyz | No
Yes |
Constraints
Time limit: 4 seconds
Memory limit: 512 MB
Output limit: 1 MB