Açar dəyərlərin daxil edilməsi
Sizi MacroHard şirkəti işə götürüb ki, tam açar dəyərlərini saxlamaq üçün yeni bir məlumat strukturu hazırlayasınız.
Bu struktur sonsuz uzunluqda olan A massivinə bənzəyir və hüceyrələr birinci mövqedən başlayaraq nömrələnir. Əvvəlcə bütün hüceyrələr boşdur. Dəstəklənməsi lazım olan yeganə əməliyyat Insert(L, K) əməliyyatıdır, burada L massivdəki mövqeyi, K isə müsbət tam açar dəyərini göstərir.
Əməliyyat aşağıdakı kimi yerinə yetirilir:
Əgər hüceyrə A[L] boşdursa, onda A[L] := K təyin edin.
Əgər hüceyrə A[L] boş deyilsə, Insert(L+1, A[L]) əməliyyatını yerinə yetirin və sonra A[L] := K təyin edin.
N tam ədədlər ardıcıllığı L_1, L_2, ..., L_N verildikdə, bu əməliyyat ardıcıllığı yerinə yetirildikdən sonra massivinin məzmununu çıxarın:
Insert(L_1, 1)
Insert(L_2, 2)
...
Insert(L_N, N)
Giriş verilənləri
Giriş faylının ilk sətirində N - Insert əməliyyatlarının sayı və M - Insert əməliyyatında istifadə edilə bilən maksimum mövqe nömrəsi verilir. (1 ≤ N ≤ 131072, 1 ≤ M ≤ 131072). Növbəti sətirdə Insert əməliyyatlarını təsvir edən N tam ədəd L_i verilir (1 ≤ L_i ≤ M).
Çıxış verilənləri
Verilən Insert əməliyyatları ardıcıllığı yerinə yetirildikdən sonra massivinin məzmununu çıxarın. İlk sətirdə massivdəki sonuncu boş olmayan mövqenin nömrəsi W çıxarın. Sonra W tam ədəd çıxarın - A[1], A[2], ..., A[W]. Boş hüceyrələr üçün sıfırlar çıxarın.