Fişierul intrare/ieşire: | trenul.in, trenul.out | Sursă | FMI No Stress 6 |
Autor | Mihai Nitu | Adăugată de | |
Timp execuţie pe test | 0.175 sec | Limită de memorie | 20480 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Por Costel și Trenul
Por Costel s-a angajat la o firmă feroviară şi, ca un pork de încredere ce e, i s-a însărcinat distribuirea biletelor pentru locurile dintr-un singur tren. Trenul cu pricina are N locuri, cu N par, iar cele N locuri sunt dispuse pe N/2 rânduri, câte două pe rând, în felul următor:
1 2
3 4
...
N-1 N
Pasagerii deja au început să-şi comande bilete. Există M comenzi iar Por Costel observă că acestea sunt de 3 tipuri:
- comandă de 1 persoană (trebuie să i se rezerve un loc oarecare)
- comandă de 2 persoane (trebuie să le fie rezervate 2 locuri aflate pe acelaşi rând)
- comandă de 3 persoane (trebuie să le fie rezervate 2 locuri aflate pe acelaşi rând şi încă un loc de pe un alt rând adiacent primului).
Por Costel trebuie să răspundă la orice comandă de x persoane afişând x locuri care respectă condiţiile cerute şi, evident, nu au mai fost distribuite anterior altcuiva. Călătoria este foarte importantă şi se anunţă că trenul va fi aproape plin. Por Costel are nevoie urgentă de ajutorul vostru ca să nu-şi mai piardă şi această slujbă!!!
Date de intrare
Fişierul de intrare trenul.in conţine primia linie 2 numere întregi separate prin câte un spaţiu, N şi M, cu semnificaţiile de sus câte. Pe următoarele M linii se găseşte un număr x din mulţimea {1,2,3} care desemnează numărul de locuri comandate la fiecare pas.
Date de ieşire
Fişierul de ieşire trenul.out trebuie conţină M linii. Pe linia cu numărul i trebuie să fie răspunsul lui Por Costel la cea de i-a comandă din fişierul de intrare. Dacă o comandă i a fost de tipul x, atunci linia cu indexul i trebuie să conţină x numere separate printr-un spaţiu.
Restricţii
- 1 ≤ N ≤ 105
- 1 ≤ M ≤ 105
- Numărul total de oameni deserviţi in cele M comenzi ≤ N
Exemplu
trenul.in | trenul.out |
---|---|
6 2 3 2 | 1 2 4 5 6 |