Masala #1038
Arrayni silliqlash
Asadbek arraylarni yaxshi ko`radi qachonki ular silliqlangan bo'lsa.
Silliqlangan array bu elementlarining orasida boshqa bir array bo`lmagan to'plamdir. Masalan: [1, 2, 3] silliqlangan array, chunki elementlar tarkibida boshqa array yo'q. [1, 2, [3, 4]] esa silliqlanmagan array, chunki elementlari tarkibida [3, 4] array mavjud. Kunlarning birida Ibrohim Asadbekga yangi funksiyani o'rgatdi. Bu funksiya arrayning har bir elementini 1 pog'ona yuqoriga ko'tarib beradi, agar element 0 - pog'onada bo'lsa uning pog'onasi o'zgarmaydi.
Masalan:
[1, [2, 3], [3, 4, [1, 2]]] => [1, 2, 3, 3, 4, [1, 2]]
Ya'ni:
1 => 0 - pog'onada bo'gani uchun uning pog'onasi o'zgarmaydi.
[2, 3] => 2, 3.
[3, 4, [1, 2]] => 3, 4, [1, 2].
Asadbek bu funksiyani o'zi qaytadan tuzishga qaror qildi va sizga ham buni taklif qilmoqchi. Unga funksiya tuzishda yordam bering!
Kirish faylida sizga bir qatorda k (0 < k < 109) soni va string s (0 < |s| < 105) ko'rinishida arrayning dastlabki holati beriladi. Bu yerda |s| - matnning uzunligi. Matnda ortiqcha probellar bo'lmasligi va array to'g'ri formatda berilganligi kafolatlanadi.
Siz dastlabki arrayni k marta silliqlashdan so'ng hosil bo'lgan yangi arrayni chop etishingiz kerak.
# | input.txt | output.txt |
---|---|---|
1 |
1 [1,[2,3],[3,4,[1,2]]] |
[1,2,3,3,4,[1,2]] |
2 |
200 [a,[b,c,[d,e]]] |
[a,b,c,d,e] |
Agar silliqlanayotgan array allaqachon silliqlangan bo'lsa funksiya arrayning o'zini qaytaradi.
[1, 2, 3, 4, 5] => [1, 2, 3, 4, 5].