Problem description
Zrealizuj strukturę danych, w której będą możliwe następujące operacje:
- insert(x) - wstaw element x, o ile nie jest on jeszcze w strukturze,
- erase(x) - usuń element x,
- select(k) - zwróć k-ty co do wielkości element.
Za pomocą swojej struktury zasymuluj jej działanie dla przykładowych operacji podanych na standardowym wejściu. Instrukcje będą zapisane w osobnych wierszach i oznaczają odpowiednio:
A x
- insert(x)E x
- erase(x)S k
- select(k)
Wejście
W pierwszym wierszu standardowego wejścia znajduje się jedna liczba
naturalna T oznaczająca liczbę
zestawów danych. Po tym następuje opis każdego zestawu. Opis zestawu
testowego składa się z serii instrukcji zapisanych w osobnych wierszach
zakończonych instrukcją K 0
. Możliwe instrukcje opisane są
powyżej.
Wyjście
Dla każdego zestawu danych wypisz odpowiedzi do instrukcji zgodnie z poniższymi zasadami:
- Dla każdej instrukcji
E x
, jeżeli element x nie należał w danym momencie do struktury, należy wypisać jedno słowobrak
. - Dla każdej instrukcji
S k
należy wypisać wartośćk
-tego elementu w strukturze, jeśli takiego nie ma, należy wypisać jedno słowobrak
.
Ograniczenia
1 ≤ T ≤ 10, 0 ≤ x ≤ 1 000 000. Łączna liczba instrukcji we wszystkich zestawach testowych nie przekracza 500 000.
Przykład
Input | Output | |
|
|