#1709
Asort
Se consideră un număr natural par N
și șirul ordonat crescător X
format din primele N
numere naturale nenule:
X[1] = 1
, X[2] = 2
, …., X[N] = N
.
Pozițiile numerelor din șir se pot modifica doar conform regulii A
,după cum urmează:
X[1]
este număr impar, atunci se interschimbă X[1]
cu X[2]
, X[3]
cu X[4]
, …, X[N-1]
cu X[N]
;X[1]
este par atunci se interschimbă X[2]
cu X[3]
, X[4]
cu X[5]
, …, X[N-2]
cu X[N-1]
, iar X[N]
cu X[1]
.Aplicând de R
ori regula A
șirului X
se transformă șirul dat într-un șir “A sortat”.
Cunoscându-se numerele naturale N
, R
, K
și T
, scrieți un program care să determine:
1) Numărul situat pe poziția K
în șirul “ A
sortat” obținut prin aplicarea de R
ori a regulii “ A
” șirului X
.
2) Predecesorul și succesorul numărului T
în șirul “ A
sortat” .
ONI GIM 2016, Baraj
Problema | Asort | Operații I/O |
asort.in /asort.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 2 MB
/
Stivă 2 MB
|
Id soluție | #50652437 | Utilizator | |
Fișier | asort.cpp | Dimensiune | 835 B |
Data încărcării | 18 Aprilie 2024, 17:12 | Scor / rezultat | Eroare de compilare |
asort.cpp:8:23: error: size of array 'v' is too large long long v[1000000002]; ^ asort.cpp: In function 'int main()': asort.cpp:15:25: error: 'v' was not declared in this scope for (i = 1; i <= n; v[i] = i, i++); ^ asort.cpp:19:13: error: 'v' was not declared in this scope if (v[1] % 2) ^ asort.cpp:40:17: error: 'v' was not declared in this scope cout << v[k]; ^ asort.cpp:42:17: error: 'v' was not declared in this scope cout << v[t - 1] << ' ' << v[t + 1]; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Asort 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ă.