Pagini recente » Monitorul de evaluare | Istoria paginii utilizator/[email protected] | Monitorul de evaluare | Monitorul de evaluare | Diferente pentru problema/numerex intre reviziile 3 si 4
Nu exista diferente intre titluri.
Diferente intre continut:
== include(page="template/taskheader" task_id="numerex") ==
Poveste şi cerinţă...
Se considera un vector cu $N$ numere, inital egale cu $0$, asupra caruia se vor $M$ operatii astfel:
* $UPDATE x y k$: Pentru orice $i$, $x <= i <= y$, valoarea elementului $i$ din vector creste cu $k * (i - x + 1)$. Practic primul element din interval creste cu valoarea $k$, al doilea cu $2 * k$ si asa mai departe pana la ultimul element.
* $QUERY x y$: Se cere sa se spuna care este suma elementelor pe intervalul [$x$, $y$].
h2. Date de intrare
Fişierul de intrare $numerex.in$ ...
Fisierul de intrare $numerex.in$ va contine pe prima linie numerele $N$ si $M$. Pe urmatoarele $M$ linii vor fi descrise operatiile. Fiecare linie care descrie o operatie incepe cu un cod binar (un numar intreg cu valoarea 0 sau 1) si continua cu 2 sau 3 numere intregi:
* Un cod $0$ va semnifica o operatie de $UPDATE$ si va fi urmat de $3$ numere $x$, $y$ si $k$ (cu semnificatia din enunt)
* Un cod $1$ va semnifica o operatie de $QUERY$ si va fi urmat de $2$ numere $x$ si $y$ (cu semnificatia din enunt)
h2. Date de ieşire
În fişierul de ieşire $numerex.out$ ...
In fisierul de iesire $numerex.out$ se vor scrie pe cate o linie sumele cerute de fiecare operatie de tip $QUERY$ (sumele se cer in ordinea aparitiei operatiilor in fisierul de intrare).
h2. Restricţii
h2. Exemplu
table(example). |_. numerex.in |_. numerex.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
| 4 4
0 1 3 2
1 2 4
0 2 4 3
1 1 3
| 10
21
|
h3. Explicaţie
...
Dupa prima operatie de $UPDATE$ vectorul va fi $2 4 6 0$, iar suma pe intervalul [$2$, $4$] este egala cu $10$.
Dupa a doua operatie de $UPDATE$ vectorul va fi $2 7 12 9$ iar suma pe intervalul [$1$, $3$] este egala cu $21$.
== include(page="template/taskfooter" task_id="numerex") ==
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.