Restoranda iş
Çox asan
Zaman limiti 1 saniyə-dir
Yaddaş məhdudiyyəti 128 meqabayt
Keçən gecə Tom gözəl bir qızla görüşə getdi. Lakin kredit kartını götürməyi unutdu və cüzdanında heç bir nağd pul qalmamışdı. Buna görə də, restoranda qalaraq axşam yeməyini işləyərək ödəməli oldu. Onun vəzifəsi, ofisiantın masalardan topladığı boşqabları götürüb yuyucu maşına aparmaq idi. Boşqablar yuyucuya Tomun onları ofisiantdan aldığı sırada daxil olmalıdır. Əks halda, yuyulma daha çox vaxt ala bilərdi, çünki yemək boşqaba yapışıb quruyardı. Bütün boşqabları əllərində saxlamaq pis bir fikir idi, buna görə də Tom ofisiantın ona verdiyi boşqabları masaya qoyur və növbə çatanda boşqabları masadan yuyucu maşına aparırdı. Masada yalnız iki boşqab yığını yerləşdirilə bilər, bunları yığın **1** və yığın **2** adlandıracağıq. Tomun yalnız bir masası var. Keçən il Tom cənub-qərbi Avropa regionunda proqramlaşdırma yarışmasını qazandı, buna görə də o, hər hansı bir prosesi effektiv şəkildə optimallaşdıra bilər. Tomun aldığı əmrlər ardıcıllığına əsasən, onun tapşırığı yerinə yetirməsini təmin edəcək boşqabların hərəkət ardıcıllığını çıxarmaq lazımdır. #### Giriş məlumatları Bir neçə testdən ibarətdir. Hər testin ilk sətri **n** (**1** ≤ **n** ≤ **1000**) ədədini ehtiva edir. Onun ardınca **n** sətir gəlir, hər biri ya **DROP m** ya da **TAKE m** ehtiva edir, burada **m** > **0** boşqabların sayına bərabərdir, hansı ki, qoyulmalı və ya götürülməlidir. **DROP m** Tomun ofisiantdan **m** boşqab alıb masaya qoyması hadisəsini ifadə edir. **TAKE m** isə Tomun masadan **m** boşqab götürüb onları yuyucu maşına eyni sırada qoymasını ifadə edir. Tom heç vaxt **TAKE m** əmri almayacaq, əgər masada **m** boşqabdan az varsa. **DROP** əməliyyatlarına uyğun olan bütün **m** dəyərlərinin cəmi `10^5`-i keçmir. Qeyd edək ki, son əmrin icrasından sonra Tomun masasında boşqablar qala bilər, çünki Tom vəzifələrindən azad edilə bilər və restoranın bağlanmasına qədər qala bilər. Son test **n** = **0** ehtiva edir və işlənmir. #### Çıxış məlumatları Hər test üçün boşqablar üzərində icra edilən əmrləri ehtiva edən sətirlər dəstini çıxarmaq lazımdır. Hər sətirin məzmunu aşağıdakılardan biri ola bilər: • **DROP 1 m** ( **DROP 2 m** ), **m** > **0**, əgər Tom ofisiantdan boşqab alıb onu yığın **1** (yığın **2**) üzərinə qoymalıdırsa və bu əməliyyatı **m** dəfə təkrarlamalıdırsa. • **TAKE 1 m** ( **TAKE 2 m** ), **m** > **0**, əgər Tom yığın **1** (yığın **2**) üzərindən boşqab götürüb onu yuyucuya verməlidirsə və bu əməliyyatı **m** dəfə təkrarlamalıdırsa. • **MOVE 1->2 m** ( **MOVE 2->1 m** ), **m** > **0**, əgər Tom yığın **1** (yığın **2**) üzərindən boşqab götürüb onu yığın **2** (yığın **1**) üzərinə qoymalıdırsa və bu əməliyyatı **m** dəfə təkrarlamalıdırsa. Ən azı **6n** sətir çıxarmaq lazımdır və hesabatınızdakı əməliyyatların ümumi sayı (yəni, bütün üç növ əmrlər üçün çıxarılan bütün **m**-lərin cəmi) **6M**-i keçməməlidir, əks halda Tom tapşırığını yerinə yetirə bilməz. Tom əmrləri aldığı sırada yerinə yetirməlidir. Bu o deməkdir ki, əgər o **TAKE m** əmri alırsa, müəyyən sayda **MOVE** və **TAKE** əməliyyatları icra edilməlidir ki, götürülən boşqabların ümumi sayı dəqiq **m**-ə bərabər olsun, sonra o, növbəti əmri yerinə yetirməyə keçə bilər; və əgər o **DROP m** əmri alırsa, **DROP** və **MOVE** əməliyyatları ardıcıllığını icra etməlidir ki, qoyulan boşqabların ümumi sayı dəqiq **m**-ə bərabər olsun, sonra o, növbəti əmri yerinə yetirməyə keçə bilər. Əlbəttə ki, ofisiantdan boşqab almaq və ya onları yuyucuya vermək müvafiq əmrlər olmadıqda qadağandır. Qonşu testlər üçün məlumatların çıxışı arasında boş sətir çap edilməlidir. Hər hansı bir icazə verilən həll qəbul ediləcək.
Nümunələr
Giriş #1
Çıxış #1
Təqdimatlar 46
Qəbul dərəcəsi 28%