Atenţie! Aceasta este o versiune veche a paginii, scrisă la 2012-03-10 12:09:39.
Revizia anterioară   Revizia următoare  

 

Fişierul intrare/ieşire:muncitori.in, muncitori.outSursăAlgoritmiada 2012, Runda 4
AutorAdrian DiaconuAdăugată deCezarMocanCezar Mocan CezarMocan
Timp execuţie pe test0.15 secLimită de memorie20480 kbytes
Scorul tăuN/ADificultateN/A

Vezi solutiile trimise | Statistici

Muncitori

Cei N muncitori de la Fabrica de Bere au o zi grea astazi, din cauza ca trebuie sa verifice calitatea celor M loturi propuse pentru export. Directorul Fabricii a afisat o lista cu momentele in care ar trebui sa inceapa verificarea fiecarui lot, Ai, cat si durata aproximativa pe care un muncitor o petrece facand respectiva verificare, Bi. Pentru a putea pleca acasa cat mai devreme posibil, muncitorii vor sa faca aceste verificari intr-un mod foarte organizat: vor lua loturile in ordine cronologica dupa momentul de start scris pe lista, fiecarui lot fiindu-i atribuit muncitorul liber care are numarul de ordine minim. Odata ce un muncitor incepe verificarea lotului i, el va fi ocupat pentru Bi secunde, fiind liber din nou la momentul Ai + Bi.

Cerinta

Dandu-se N, M si cele M perechi A B, sa se determine si sa se afiseze pentru fiecare lot ce muncitor ii va fi asociat.

Date de intrare

Fişierul de intrare muncitori.in va contine pe prima linie numerele N si M, reprezentand numarul de muncitori si respectiv de loturi care trebuie verificate. Urmatoarele M linii vor contine cate o pereche Ai Bi, momentul de start si durata pentru verificarea lotului i.

Date de ieşire

În fişierul de ieşire muncitori.out se vor afisa M numere naturale, al i-lea dintre ele reprezentand muncitorul care realizeaza verificarea cu numarul de ordine i.

Restricţii

  • 1 ≤ N ≤ 100.000
  • 1 ≤ M ≤ 100.000
  • 1 ≤ Ai, Bi ≤ 1.000.000.000
  • Se garanteaza ca pentru fiecare dintre cele M verificari va exista cel putin un muncitor disponibil.
  • Nu exista doua verificari care sa inceapa la acelasi moment de timp.

Exemplu

muncitori.inmuncitori.out
4 3
4 6
5 2
7 3
1 2 2

Explicaţie

...

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?