Diferente pentru problema/petreceri intre reviziile #2 si #20

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="petreceri") ==
Poveste şi cerinţă...
După cum ştiţi Rick este un foarte mare iubitor de petreceri. Acesta când merge la o petrecere mereu îşi propune dinainte să bea cel puţin o anumită cantitate de lapte.
 
Astăzi şi-a notat, în ordinea în care se întâmplă, N petreceri pe calendarul său, fiecare dintre ele cu un număr a[i], numărul de unităţi de lapte pe care vrea să le consume la acea petrecere.
 
Când a plecat spre prima dintre ele acesta a realizat că şi-a uitat tot laptele în altă dimensiune şi tot ce are este sticla lui goala care poate ţine T unităţi de lichid. Acesta ştie că la fiecare petrecere o unitate de lapte costă c[i] bani (doar nu e prima oara când a mers acolo) aşa că se întreabă care este numaărul minim de bani pe care trebuie sa îi plăteasca ca să îşi îndeplinească minimele propuse, ştiind că între petreceri acesta poate căra doar maxim T unităţi de lapte în sticla sa.
Nush eu ma gandesc asa: (Petreceri) Rick are chef sa mearga la N petreceri, si ele sunt intr-o anumita ordine, si fiinda cu are chef sa faca time travel trebuie sa mearga la ele in oridinea data. La fiecare petrecere el are chef sa bea a[i] litri de alcool (suc pt ca child friendly) i-ar la fiecare bar o unitate de alcool costa c[i] (insert unitate de masura here), in flaskul sau rick poate cara T unitati de suc/alcool.
h2. Date de intrare
Fişierul de intrare $petreceri.in$ ...
Prima linie a fişierului de intrare $petreceri.in$ contine numerele N, şi T. Pe următoarea linie apar N numere, al i-lea dintre ele fiind a[i]. Pe a treia linie apar N numere, al i-lea fiind c[i].
h2. Date de ieşire
În fişierul de ieşire $petreceri.out$ ...
Pe prima linie a fişierului $petreceri.out$ se va afişa suma minimă de bani care trebuie platită ca Rick să îşi poată îndeplini scopurile.
h2. Restricţii
* $... ≤ ... ≤ ...$
* Rick poate merge la petreceri doar în ordinea dată, acesta nevrând să utilizeze călătoria în timp.
* Rick poate cumpăra lapte la începutul, la finalul, sau oricând în timpul unei petreceri.
* $0 ≤ T ≤ 10^9^$
* $0 ≤ N ≤ 10^6^$
* $0 ≤ a[i] ≤ T$
* $0 ≤ c[i] ≤ 10^9^$
* Se garantează că soluţia o sa fie mai mică decât $10^18^$
* Pentru teste in valoare de 10 puncte $N, T ≤ 2000$
* Pentru alte teste in valoare de 20 de puncte $N ≤ 2000$
* Pentru alte teste in valoare de 30 de puncte $N ≤ 200000$
* Pentru alte teste in valoare de 40 de puncte nu există restricţii suplimentare
* *ATENŢIE! Având în vedere testele mari se recomandă parsarea fişierului petreceri.in. Puteţi folosi codul oferit de noi "aici":parsare-fisier-intrare (atât pentru utilizatorii de C++ şi sintaxă similară cu fstream, cât şi pentru iubitorii de C pur)*
h2. Exemplu
table(example). |_. petreceri.in |_. petreceri.out |
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
| 5 2
  1 1 1 1 1
  1 2 3 4 5
| 8
|
| 10 11
  9 5 8 8 9 5 6 7 6 5
  6 9 6 9 9 9 5 5 5 7
| 417
|
| 18 19
  6 6 8 7 7 8 8 6 8 6 9 9 5 9 9 5 5 9
  6 8 7 6 7 7 9 5 7 7 5 8 7 5 5 6 8 7
| 704
|
h3. Explicaţie
...
În primul exemplu Rick îşi va cumpăra de la prima petrecere 1 unitate de lapte şi o va bea pe loc, şi îşi va mai cumpăra încă 2 la finalul petrecerii pentru a le lua cu el. La a doua petrecere va bea o unitate de lapte din sticlă şi îşi va cumpăra înca una de la bar. La a treia va face acelaşi lucru, plecând cu sticla plina. La ultimele 2 petreceri îşi va termina laptele din sticlă. Astfel Rick va cumpăra 3 unităţi de la prima petrecere, una de la a doua petrecere si una de la a treia plătind astfel 1+1+1+2+3 = 8 bani.
== include(page="template/taskfooter" task_id="petreceri") ==

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.