Diferente pentru problema/butoaie intre reviziile #11 si #3

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="butoaie") ==
Printr-un portal magic, un număr mare de gândaci au ieşit din Bugland şi au invadat o cramă.
Se ştie despre cramă că are $N$ camere, fiecare cameră fiind plină de butoaie de vin, iar în a $i$-a cameră se află $V{~i~}$ gândaci. Deţinătorii cramei au la dispoiziţie două tipuri de insecticide: $K$ spray-uri numite _AntiBug_ , care elimină dintr-o cameră $P$ gândaci pe zi, şi $N-K$ spray-uri numite _ZeroBugs_ , care elimină dintr-o cameră $Q$ gândaci pe zi.
Zilnic, în fiecare cameră se dă cu spray pentru a scăpa de gândaci.
Având la dispoziţie resursele date, care este numărul minim de zile în care pot fi salvate butoaiele de vin prin eliminarea tuturor gândacilor?
O cramă trebuie să transporte vinul produs în urma recoltei din acest an către un centru de depozitare. În cramă se află $N$ butoaie, al $i-lea$ butoi având $L{~i~}$ litri de vin. Zilnic, vin $N$ maşini care transportă o parte din vin. $K$ dintre aceste maşini au o capacitate de $P$ litri, iar restul de $N-K$ au o capacitate de $Q$ litri.
Fiecare maşină poate transporta vinul dintr-un singur butoi (nu neaparat acelaşi butoi în fiecare zi), iar două maşini nu pot transporta vin din acelaşi butoi în aceeaşi zi. Astfel, dintr-un butoi pot fi transportaţi fie maxim P litri, fie maxim Q litri, în funcţie de maşina aleasă.
 
h2. Cerinta
 
Pentru a economisi cât mai mulţi bani pentru transport, deţinătorii cramei vor să ştie care este numărul minim de zile necesare pentru a transporta tot vinul.
h2. Date de intrare
Din $butoaie.in$ se vor citi pe prima linie $N$ şi $K$, pe a doua linie se vor afla $P$ şi $Q$, iar pe a treia linie se vor afla $N$ numere, al $i$-lea reprezentând numărul de $V{~i~}$ gândaci din camera $i$.
În fişierul de intrare $butoaie.in$ se vor afla pe prima linie $N$ şi $K$, pe a doua linie se vor afla $P$ şi $Q$, iar pe a treia linie se vor afla $N$ numere, al $i-lea$ reprezentând cantitatea de $L{~i~}$ litri din butoiul i.
 
h2. Date de ieşire
În $butoaie.out$ se va afişa, pe prima şi singura linie, numărul minim de zile necesare pentru elimina toţi gândacii.
În fişierul de ieşire $butoaie.out$ se va afişa, pe prima şi singura linie, numarul minim de zile necesare pentru a transporta tot vinul.
h2. Restricţii
* <tex>K \leq N \leq 2\cdot 10^5</tex>
* <tex>P,\ Q \leq 10^9</tex>
* <tex>V_i \leq 10^9\ \forall\ 1 \leq i \leq N</tex>
* Pentru teste in valoare de 40 de puncte <tex>K \leq N \leq 10^4$, $P, Q \leq 100$ ; $V_i \leq 10^4</tex>
* Într-o cameră se poate da cu un singur tip de spray într-o anumită zi, două spray-uri diferite nu pot fi folosite împreună pentru că ar avea un efect toxic asupra butoaielor de vin, iar două spray-uri de acelaşi fel nu au rost să fie folosite împreună deoarece efectul lor nu creşte.
* $K &le; N &le; 2*10^5^$
* $P, Q &le; 10^9^$
* $L{~i~} &le; 10^9^$ pentru $1 &le; i &le; N$
 
* Pentru teste in valoare de 20 de puncte $K &le; N &le; 5*10^2^, P, Q &le; 5*10^2^ şi L{~i~} &le; 5*10^2^$
* Pentru alte teste in valoare de 20 de puncte $K &le; N &le; 5*10^3^, P, Q &le; 10^3^ şi L{~i~} &le; 10^3^$
h2. Exemplu
h3. Explicaţie
După prima zi: $3 4 5 7 8 -> 2 3 4 4 5$ (din camerele $4$ şi $5$ se elimină câte 3 gândaci, iar din camerele $1, 2$ şi $3$, câte $1$ gândac)
După a doua zi: $2 3 4 4 5 -> 1 2 3 1 2$ (din camerele $4$ şi $5$ se elimină câte $3$ gândaci, iar din camerele $1, 2$ şi $3$, câte $1$ gândac)
După a treia zi: $1 2 3 1 2 -> 0 1 0 0 0$ (din camera $3$ se elimină $3$ gândaci, din camera $5$ se elimină $2$ gândaci, iar  din camerele $1, 2$ şi $4$, câte $1$ gândac)
După a patra zi: $0 1 0 0 0 -> 0 0 0 0 0$ (din camera $2$ se elimină $1$ gândac)
Un exemplu de a transporta tot vinul in 4 zile este:
 
Dupa prima zi: 3 4 5 7 8 -> 2 3 4 4 5 (din butoaiele 4 si 5 se transporta cate 3 litrii, iar din butoaiele 1 2 si 3, cate 1 litru)
Dupa a doua zi: 2 3 4 4 5 -> 1 2 3 1 2  (din butoaiele 4 si 5 se transporta cate 3 litrii, iar din butoaiele 1 2 si 3, cate 1 litru)
Dupa a treia zi: 1 2 3 1 2 -> 0 1 0 0 0 (din butoaiul 3 se transporta 3 litrii, din butoiul 5 se transporta 2 litrii, iar din butoaiele 1 2 si 4, cate 1 litru)
Dupa a parta zi: 0 1 0 0 0 -> 0 0 0 0 0 (din butoiul 2 se transporta 1 litru)
 
== include(page="template/taskfooter" task_id="butoaie") ==

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.