Zadanie : drkop-2
Zadanie

Dany jest ciąg liczb całkowitych (a_n) oraz drugi ciąg liczb całkowitych (b_n).

Napisz program, który dla każdej liczby b_i ciągu drugiego, znajdzie w pierwszym ciągu minimalną liczbę większą od liczby b_i, a następnie usunie znalezioną liczbę z ciągu pierwszego.

Wejście

Pierwszy wiersz wejścia zawiera dwie liczby całkowite: n z zakresu 1..200000 będące długością ciągu (an) oraz liczbę całkowitą k z zakresu 1..200000.
W wierszu drugim zapisano n liczb całkowitych z zakresu 0..4*106 - wyrazy ciągu liczbowego (an). Możesz założyć, że wszystkie liczby tego ciągu są różne.
W każdym z kolejnych k wierszy zapisano po jednej liczbie całkowitej z zakresu 1..4*106 - wyrazy ciągu (bn).

Wyjście

W kolejnych wierszach wyjścia, dla każdej liczby bi należy wypisać znaleziony minimalny wyraz ciągu (an) lub liczbę -1 gdy taka liczba w ciągu (an) nie istnieje.

Przykład

Dla danych podanych na wejściu:

14 2
0 1 3 8 9 10 11 12 13 14 15 17 18 20
3
11

Poprawną odpowiedzią jest wyjście:

3 8
11 12

Jeśli chcesz zobaczyć inny przykład odśwież tę stronę klawiszem F5

Opcje zadania:

Biblioteki         : iostream iomanip cmath 
Limit czasu        : 0.5 s
Limit pamięci      : 64 MB
Słowa niedozwolone :