N
și M
și apoi M
perechi de numere X
, Y
ambele valori fiind cuprinse între 1
și N
. În această problemă numim interval o mulțime de numere naturale consecutive. Notăm [A, B]
cu A <= B
ca fiind intervalul format din numerele A, A+1, A+2, ... B-1, B
. Numim descompunere în intervale a unei perechi de numere X
, Y
ca fiind o mulțime de intervale care acoperă complet mulțimea (fiecare număr dintre X
și Y
, inclusiv, este conținut de exact un interval din descompunere). De exemplu, pentru perechea 5,10
, o descompunere în intervale este [5,5], [6,8],[9,10]
.
Dorim să realizăm o descompunere în intervale a tuturor celor M
perechi de numere date, astfel încât să se îndeplinească condițiile următoare (notăm L = 1 + [log
2
N]
).
2*L
intervale.N
.Problema | Descompunere in Intervale | Operații I/O |
di.in /di.out
|
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #15589186 | Utilizator | |
Fișier | descompunere_in_intervale.cpp | Dimensiune | 727 B |
Data încărcării | 27 Aprilie 2019, 21:48 | Scor / rezultat | 100 puncte |
descompunere_in_intervale.cpp: In function 'int main()': descompunere_in_intervale.cpp:27:30: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("di.in","r",stdin); ^ descompunere_in_intervale.cpp:28:32: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("di.out","w",stdout); ^ descompunere_in_intervale.cpp:30:15: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d",&n); ^ descompunere_in_intervale.cpp:31:15: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d",&m); ^ descompunere_in_intervale.cpp:33:24: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d%d",&x,&y); ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | Corect ! | 10 | 10 | ||
2 | 0 secunde | Corect ! | 10 | 10 | ||
3 | 0 secunde | Corect ! | 10 | 10 | ||
4 | 0 secunde | Corect ! | 10 | 10 | ||
5 | 0.008 secunde | Corect ! | 10 | 10 | ||
6 | 0.06 secunde | Corect ! | 10 | 10 | ||
7 | 0.136 secunde | Corect ! | 10 | 10 | ||
8 | 0.292 secunde | Corect ! | 10 | 10 | ||
9 | 0.388 secunde | Corect ! | 10 | 10 | ||
10 | 0.52 secunde | Corect ! | 10 | 10 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Descompunere in Intervale face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.