#1695
Oglinda
Pentru un număr natural N
se consideră șirul a=(1,2,3...,N)
, deci a[i]=i
pentru orice i
, 1≤i≤N
.
Asupra acestui șir se pot aplica operații de două tipuri:
a) la operația de tipul 1 se specifică două valori i
și j
, cu 1≤i≤j≤N
. Efectul acestei operații asupra șirului este de oglindire a secvenței din șir care începe cu elementul de pe poziția i
și se termină cu cel de pe poziția j
. De exemplu, dacă în șirul a=(1,2,3,4,5,6,7)
se aplică operația 3 6
, atunci șirul devine a=(1,2,6,5,4,3,7)
. Iar în șirul a=(1,4,3,2,5,6,7)
, dacă se aplică operația 4 6
, atunci a=(1,4,3,6,5,2,7)
.
b) Operația de tipul 2 conține un indice i
, 1≤i≤N
, și cere să afișăm valoarea elementului care se află în acel moment pe poziția i
în șir.
Se consideră M
astfel de operații într-o ordine dată.
Scrieți un program care să determine și să afișeze rezultatul pentru fiecare operație de tipul 2.
ONI 2016, clasa a V-a
Problema | Oglinda | Operații I/O |
oglinda.in /oglinda.out
|
---|---|---|---|
Limita timp | 0.3 secunde | Limita memorie |
Total: 16 MB
/
Stivă 8 MB
|
Id soluție | #49638379 | Utilizator | |
Fișier | oglinda.cpp | Dimensiune | 827 B |
Data încărcării | 10 Martie 2024, 21:01 | Scor / rezultat | Eroare de compilare |
oglinda.cpp: In function 'int op1(int, int)': oglinda.cpp:8:8: error: 'j' was not declared in this scope k=(j-i+1)/2 ^ oglinda.cpp:9:5: error: expected ';' before 'for' for(i=a;i<=k;i++) ^ oglinda.cpp:9:14: warning: statement has no effect [-Wunused-value] for(i=a;i<=k;i++) ^ oglinda.cpp:9:21: error: expected ';' before ')' token for(i=a;i<=k;i++) ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Oglinda 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ă.