Revizia anterioară Revizia următoare
Fişierul intrare/ieşire: | pm2.in, pm2.out | Sursă | OJI 2009, clasele 11-12 |
Autor | Csaba Patcas | Adăugată de | |
Timp execuţie pe test | 0.05 sec | Limită de memorie | 4736 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Project management
La o firmă de software se lucrează la un mare proiect. Proiectul constă în executarea a N faze de dezvoltare, numerotate cu numerele 1, 2, ..., N. Unele faze pot fi executate în paralel (în acelaşi timp), însă executarea altor faze nu poate fi începută până când nu se finalizează executarea anumitor faze.
Cerinţă
Să se scrie un program care să se determine:
- Timpul minim t în care se poate finaliza executarea proiectului
- Pentru fiecare fază k ( 1 ≤ k ≤ N ), momentul de timp ck la care poate începe faza k cel mai devreme, respectiv momentul de timp dk la care poate începe faza k cel mai târziu, fără a influenţa durata totală de executare a proiectului.
Date de intrare
Fişierul de intrare pm2.in conţine:
- pe prima linie, un număr natural N, reprezentând numărul fazelor proiectului
- pe a doua linie, N numere naturale, separate prin câte un spaţiu, reprezentând timpul necesar finalizării fiecărei faze
- pe fiecare linie k dintre următoarele N linii, un număr natural mk şi un şir a format din mk numere naturale: a1, a2, ..., amk, cele mk + 1 numere din linie fiind separate prin câte un spaţiu, mk reprezentând numărul de faze ce trebuie finalizate înaintea începerii fazei k, iar numerele din şirul a reprezentând numerele de ordine ale fazelor ce trebuie finalizate înaintea începerii fazei k
Date de ieşire
În fişierul de ieşire pm2.out ...
Restricţii
- ... ≤ ... ≤ ...
Exemplu
pm2.in | pm2.out |
---|---|
This is some text written on multiple lines. | This is another text written on multiple lines. |
Explicaţie
...