#3396
alternant
Se dau două numere N
și M
urmate de un șir de numere întregi nenule S
de lungime impară N
indexat de la 0
. Asupra acestuia se vor efectua fix M
operații de swap. O operație reprezintă selectarea la întâmplare a doi indici (nu neapărat distincți) din intervalul [0, N – 1]
și interschimbarea elementelor de pe pozițiile respective. Se consideră că șirul este alternant dacă nu există elemente alăturate având același semn. Determinați probabilitatea ca la finalul celei de-a M
-a operații, șirul să fie alternant. (Se garantează că există cel puțin o aranjare a șirului astfel încât acesta să fie alternant). Se poate demonstra că probabilitatea cerută se poate reprezenta sub forma P / Q
unde P
si Q
sunt prime între ele.
Info-Oltenia 2020, Clasele XI-XII
Problema | alternant | Operații I/O |
alternant.in /alternant.out
|
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 8 MB
/
Stivă 2 MB
|
Id soluție | #21070651 | Utilizator | |
Fișier | alternant.cpp | Dimensiune | 2.03 KB |
Data încărcării | 19 Februarie 2020, 10:28 | Scor / rezultat | Eroare de compilare |
alternant.cpp: In function 'int main()': alternant.cpp:33:22: error: 'sol' was not declared in this scope d1[i][1]=sol[i-1]+1,d1[i][0]=sol[i-1]+1; ^ alternant.cpp:35:22: error: 'sol' was not declared in this scope d2[i][1]=sol[i-1]+1,d2[i][0]=sol[i-1]+1; ^ alternant.cpp:37:22: error: 'sol' was not declared in this scope d3[i][0]=sol[i-1]+1,d4[i][1]=sol[i-1]+1; ^ alternant.cpp:39:22: error: 'sol' was not declared in this scope d4[i][0]=sol[i-1]+1,d3[i][1]=sol[i-1]+1; ^ alternant.cpp:41:15: error: expected ')' before ';' token if(j=2;j<=m;j++) ^ alternant.cpp:41:15: warning: suggest parentheses around assignment used as truth value [-Wparentheses] alternant.cpp:41:17: warning: statement has no effect [-Wunused-value] if(j=2;j<=m;j++) ^ alternant.cpp:41:24: error: expected ';' before ')' token if(j=2;j<=m;j++) ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema alternant 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ă.