#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 | #57023606 | Utilizator | |
Fișier | asort.cpp | Dimensiune | 1.50 KB |
Data încărcării | 13 Martie 2025, 11:45 | Scor / rezultat | Eroare de compilare |
asort.cpp: In function 'int main()': asort.cpp:31:17: error: 'i' was not declared in this scope i=(r+t)%n; ^ asort.cpp:33:17: error: 'i' was not declared in this scope i=(n+t-r)%n; ^ asort.cpp:36:17: error: 'i' was not declared in this scope i=(n+t-r)%n; ^ asort.cpp:38:17: error: 'i' was not declared in this scope i=(r+t)%n; ^ asort.cpp:40:13: error: 'i' was not declared in this scope if (i==0) ^ asort.cpp:42:11: error: 'i' was not declared in this scope p=i-1; ^ asort.cpp:43:9: error: 's' was not declared in this scope s=i+1; ^ asort.cpp:50:17: error: 'a' was not declared in this scope a=(r+p)%n; ^ asort.cpp:52:17: error: 'a' was not declared in this scope a=(n+p-r)%n; ^ asort.cpp:55:17: error: 'a' was not declared in this scope a=(n+p-r)%n; ^ asort.cpp:57:17: error: 'a' was not declared in this scope a=(p+r)%n; ^ asort.cpp:59:13: error: 'a' was not declared in this scope if (a==0) ^ asort.cpp:63:17: error: 'b' was not declared in this scope b=(r+s)%n; ^ asort.cpp:65:17: error: 'b' was not declared in this scope b=(n+s-r)%n; ^ asort.cpp:68:17: error: 'b' was not declared in this scope b=(n+s-r)%n; ^ asort.cpp:70:17: error: 'b' was not declared in this scope b=(r+s)%n; ^ asort.cpp:72:13: error: 'b' was not declared in this scope if (b==0) ^ asort.cpp:74:17: error: 'a' was not declared in this scope cout << a << ' ' << b << '\n'; ^ asort.cpp:74:29: error: 'b' was not declared in this scope cout << a << ' ' << b << '\n'; ^
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ă.