#4816
experimente
Dexter și-a deschis un laborator nou în care vrea să efectueze o serie de experimente pe șoareci pentru a descoperi leacul pentru cancer. În laborator există N
șoareci, care se află așezați într-un cerc și sunt numerotați în ordine de la 0
la N-1
. Dexter efectuează, pe rând, M
experimente. Pentru fiecare experiment șoarecii care participă la al i
-lea experiment formează întotdeauna un interval continuu, exprimat sub forma unei perechi de numere (S[i], F[i])
, având semnificația:
S[i] ≤ F[i]
, atunci șoarecii S[i], S[i]+1, ..., F[i]
participă la experimentul i
;S[i] > F[i]
, atunci șoarecii S[i], S[i]+1, ..., N-2, N-1, 0, ..., F[i]
participă la experimentul i
.La fiecare pas, Dexter vrea să știe câți din cei N
șoareci au participat la toate experimentele efectuate până atunci. Altfel spus, după fiecare al i
-lea experiment efectuat, să se determine numărul de șoareci care au participat la toate experimentele 1, 2, ..., i
.
OJI 2025, clasele 11-12
Problema | experimente | Operații I/O |
![]() experimente.in /experimente.out
|
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 256 MB
/
Stivă 64 MB
|
Id soluție | #57936409 | Utilizator | |
Fișier | experimente.cpp | Dimensiune | 2.68 KB |
Data încărcării | 03 Mai 2025, 15:36 | Scor / rezultat | Eroare de compilare |
experimente.cpp: In function 'Interval intersectCircular(Interval, Interval)': experimente.cpp:52:23: error: conflicting declaration 'std::vector<bool> mark' vector<bool> mark(N, false); ^ experimente.cpp:21:10: error: 'mark' has a previous declaration as 'intersectCircular(Interval, Interval)::__lambda4 mark' auto mark = [&](int64 s, int64 e) { ^ experimente.cpp:53:32: error: no match for 'operator[]' (operand types are 'intersectCircular(Interval, Interval)::__lambda4' and 'long long int') for (int64 x : result) mark[x] = true; ^ experimente.cpp:58:17: error: no match for 'operator[]' (operand types are 'intersectCircular(Interval, Interval)::__lambda4' and 'long long int') if (mark[i]) { ^ experimente.cpp:60:24: error: no match for 'operator[]' (operand types are 'intersectCircular(Interval, Interval)::__lambda4' and 'long long int') while (mark[j]) { ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema experimente 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ă.