#2236
Se consideră un șir binar a[1], a[2], …, a[n]. Asupra șirului se poate efectua operația swap(i, j) prin care se interschimbă valorile a[i] și a[j]. Să se determine numărul minim de operații swap care pot fi efectuate astfel încât toate valorile de 1 să apară pe poziții consecutive în șir.
-
| Problema | swap01 | Operații I/O |
tastatură/ecran
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #29602180 | Utilizator | |
| Fișier | swap01.cpp | Dimensiune | 578 B |
| Data încărcării | 11 Mai 2021, 17:36 | Scor/rezultat | 100 puncte |
swap01.cpp: In function 'int main()': swap01.cpp:7:26: warning: unused variable 'lc' [-Wunused-variable] int v[100002],nr=0,n,lc=0,lmax=0,minv=100002,i,j; ^ swap01.cpp:7:31: warning: unused variable 'lmax' [-Wunused-variable] int v[100002],nr=0,n,lc=0,lmax=0,minv=100002,i,j; ^ swap01.cpp:7:52: warning: unused variable 'j' [-Wunused-variable] int v[100002],nr=0,n,lc=0,lmax=0,minv=100002,i,j; ^ swap01.cpp:15:13: warning: unused variable 'b' [-Wunused-variable] int a=0,b=0,k=0; ^ swap01.cpp:15:17: warning: unused variable 'k' [-Wunused-variable] int a=0,b=0,k=0; ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 0 | 0 secunde | OK. | 10 | 10 | ||
| 1 | 0 secunde | OK. | 10 | 10 | ||
| 2 | 0 secunde | OK. | 10 | 10 | ||
| 3 | 0.004 secunde | OK. | 10 | 10 | ||
| 4 | 0.008 secunde | OK. | 10 | 10 | ||
| 5 | 0.012 secunde | OK. | 10 | 10 | ||
| 6 | 0.012 secunde | OK. | 10 | 10 | ||
| 7 | 0.016 secunde | OK. | 10 | 10 | ||
| 8 | 0.016 secunde | OK. | 10 | 10 | ||
| 9 | 0.02 secunde | OK. | 10 | 10 | ||
| Punctaj total | 100 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema swap01 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ă.