Pagini recente »
Diferențe pentru problema/rotk între reviziile 2 și 8
Diferențe pentru
problema/rotk între reviziile
#2 si
#8
Nu există diferențe între titluri.
Diferențe între conținut:
== include(page="template/taskheader" task_id="rotk") ==
_Notă: această problemă este un exercițiu de lucru cu vectori, în scop didactic._
Se dau două secvențe de $n1$ respectiv $n2$ elemente. Se citesc, de asemenea, alte trei valori, [$k1$], $k2$ și [$k$]. Se cere să se afișeze o secvență care se obține pe baza secvențelor originale.
h2. Cerință
# Se consideră acum secvența obținută prin adăugarea celei de-a doua secvențe la prima, după rotații. Această secvență are $n$ elemente, unde $n = n1 + n2$.
# Să se rotească această secvență cu $k$ poziții spre începutul ei și să se afișeze.
*Atenție*! Nu aveți memorie decît pentru n elemente întregi!
*Atenție*! Nu aveți memorie decît pentru $n$ elemente întregi!
h2. Date de intrare
Fișierul de intrare $rotk.in$ ...
În fișierul de intrare $rotk.in$ se află pe prima linie [$n1$], apoi, pe a doua linie cele $n1$ elemente ale primei secvențe. Pe a treia linie se află valoarea [$k1$]. Pe a patra linie se află [$n2$], iar pe a cincea linie se află cele $n2$ elemente ale celei de-a doua secvențe. Pe a șasea linie se află valoarea [$k2$], iar pe a șaptea linie valoarea [$k$].
h2. Date de ieșire
În fișierul de ieșire $rotk.out$ ...
În fișierul de ieșire $rotk.out$ se vor afișa în ordine elementele secvenței obținute în final, după pasul [$4$].
h2. Restricții
* $... ≤ ... ≤ ...$
* $1 ≤ n1, n2 < 200 000$
* $1 < n1 + n2 ≤ 200 000$
* $0 ≤ k1 < n1$
* $0 ≤ k2 < n2$
* $0 ≤ k < n1 + n2$
* $elementele secvențelor sînt numere între 0 și 2 000 000 000$
* $atenție: nu puteți stoca elementele secvențelor decît o dată, deoarece nu aveți suficientă memorie$
h2. Exemplu
h2. Exemple
table(example).
|_. rotk.in |_. rotk.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
|
h3. Explicație
...
|_. rotk.in |_. rotk.out |_. Explicație |
| 3
7 5 6
1
4
2 3 4 1
3
3
| 1 2 3 4 5 6 7
| Prima secvență rotită cu 1:
5 6 7
A doua secvență rotită cu 3:
1 2 3 4
Secvența compusă prin adaugare:
5 6 7 1 2 3 4
Secvența rotită cu 3
1 2 3 4 5 6 7
|
| 8
1 3 2 4 7 8 9 5
3
4
9 8 7 6
2
3
| 9 5 1 3 2 7 6 9 8 4 7 8
| Prima secvență rotită cu 3:
4 7 8 9 5 1 3 2
A doua secvență rotită cu 2:
7 6 9 8
Secvența compusă prin adaugare:
4 7 8 9 5 1 3 2 7 6 9 8
Secvența rotită cu 3
9 5 1 3 2 7 6 9 8 4 7 8
|
== include(page="template/taskfooter" task_id="rotk") ==
Nu există diferențe între securitate.