Fişierul intrare/ieşire: | motel.in, motel.out | Sursă | Grigore Moisil 2009, clasa a 10a |
Autor | Csaba Patcas | Adăugată de | |
Timp execuţie pe test | 0.05 sec | Limită de memorie | 20480 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Motel
La motelul Gentiana se fac rezervari pentru n grupuri de turisti pe mai multi ani in avans. Cunoscand ziua in care incep rezervarile, zi avand numarul de ordine 1, grupurile precizeaza numarul de ordine al primei si ultimei zile a perioadei pe care doresc s-o petreaca la motel. Proprietarul motelului intentioneaza sa organizeze pentru fiecare grup o serbare traditionala, care poate fi realizata doar in sala festiva, unde incape un singur grup de turisti. La aceste evenimente va participa un artist care stabileste acele n zile in care poate veni la serbari. Ajutati proprietarul motelului sa determine pentru fiecare grup de turisti ziua in care poate fi organizata serbarea.
Date de intrare
Pe prima linie a fisierului de intrare motel.in se afla numarul natural n, reprezentand numarul grupurilor de turisti si a zilelor in care artistul poate veni la motel. Pe urmatoarele n linii sunt scrise cate doua numere naturale (separate printr-un spatiu), reprezentand prima si ultima zi a perioadelor solicitate de grupurile de turisti. Pe urmatoarele n linii se afla cate un numar natural, reprezentand numarul de ordine al zilelor in care artistul este disponibil.
Date de ieşire
In cazul in care exista solutie, fisierul de iesire motel.out va contine n linii. Pe fiecare se vor afla doua numere naturale, separate printr-un spatiu. Primul numar este numarul de ordine al grupului in fisierul de intrare, al doilea este numarul de ordine in fisierul de intrare al zilei alese pentru serbare. In cazul in care exista cel putin un grup pentru care nu se poate determina o astfel de zi, in fisier se vor scrie doar doua numere 0 separate printr-un spatiu.
Restricţii
- 1 ≤ n ≤ 4000
- 1 ≤ numărul de ordine al unei zi ≤ 30000
Exemplu
motel.in | motel.out |
---|---|
5 12 23 100 120 5 15 45 60 35 56 5 48 50 110 13 | 3 1 1 5 5 2 4 3 2 4 |
Explicaţie
O alta solutie posibila ar fi fost 3->1, 1->5, 5->3, 4->2, 2->4.