Diferente pentru problema/kmalloc intre reviziile #6 si #7

Nu exista diferente intre titluri.

Diferente intre continut:

Umanitatea se află în pragul colapsului nuclear. Dr. Merkwürdigliebe proiectează un sistem de operare pentru ghidarea rachetelor. Supravieţuirea umanităţii depinde de algoritmul de alocare a memoriei, implementat de funcţia kmalloc. Această funcţie primeşte un singur parametru size, număr natural, identifică o zonă continuă liberă de memorie de mărime 2^size^ şi returnează adresa de început a acesteia. După acest moment, zona respectivă de memorie devine ocupată. Sistemul de operare are la dispoziţie $N$ octeţi numerotaţi de la $0$ la $N-1$. Se dau $P$ intervale continue de memorie, care sunt rezervate deja şi nu pot fi folosite pentru alocare. Funcţia kmalloc va fi apelată până la întâlnirea lui $-1$.
Programul pe care îl veţi scrie pentru a salva umanitatea va furniza o implementare a funcţiei kmalloc şi nu va citi şi nu va scrie din/în niciun fişier. În schimb, programul vostru va interacţiona cu un program al comisiei care ruleazǎ în paralel.
Mod de interacţiune
 
Mod de interacţiune: http://infoarena.ro/documentatie/tutorial#probleme-interactive
Va trebui să citiţi de la intrarea standard, de pe prima linie, două numere întregi $N$ şi $P$ cu semnificaţiile din enunţ. Următoarele $P$ linii vor conţine câte două numere întregi între $0$ şi $N–1$, reprezentând adresa de început şi cea de sfârşit a intervalelor rezervate. Aceste intervale nu se vor
suprapune şi vor fi date în ordinea crescătoare a adreselor ocupate. Valorile parametrilor corespunzători apelurilor funcţiei kmalloc vor fi citite câte unul pe linie. Programul va trebui să afişeze pe ecran adresa de memorie de început a zonei allocate, înainte de a citi valoarea parametrului care corespunde următorului apel al funcţiei kmalloc. Se garantează că toate cererile de alocare de memorie pot fi satisfăcute de către un algoritm potrivit.
Recomandări de programare
h2. Exemplu
table(example). |_. kmalloc.in |_. kmalloc.out |
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
| 13 2
5 5
6 6
2
 
0
 
1
 
2
 
-1
|
 
 
 
0
 
4
 
7
 
9
 
|
h3. Explicaţie

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.