Lucifer, Împăratul Iadului, este încurcat. Design-ul inițial al iadului era bun, dar populația Pământului în creștere continuă îi dă toate planurile peste cap, de aceea vă cere ajutorul.
În iad tocmai s-a deschis o secțiune nouă, în care există N cazane, cu capacitățile a1, a2, . . . , aN oameni. Inițial secțiunea este goală, dar pe parcursul a M zile sunt aduși noi păcătoși, care trebuie puși în cazane, fără a depăși capacitatea lor maximă. În dimineața zilei i (1 ≤ i ≤ M) sunt aduși pi păcătoși. Fiecare cazan trebuie păzit ca păcătoșii să nu scape. Din cauza aceasta, Lucifer dorește ca numărul de cazane folosite în fiecare zi să fie cât mai mic.
Care este numărul minim de cazane care trebuie folosite în fiecare zi?
Date de intrare:
Pe prima linie se găsesc numerele N și M cu semnificația din enunț.
Pe următoarea linie se găsesc N valori: a1, a2, . . . , aN cu semnificația din enunț.
Pe următoarea linie se găsesc M valori: p1, p2, . . . , pM cu semnificația din enunț.
Date de ieșire:
Se vor afișa M numere, al i-lea număr reprezentând numărul minim de cazane necesare la sfârșitul zilei i.
Restricții și precizări:
1 ≤ N, M ≤ 1000
1 ≤ ai, pi ≤ 1000
Σ pi ≤ Σ ai
Datele de intrare și ieșire sunt furnizate prin intrarea și ieșirea standard (cin și cout în C++, scanf și printf în C).
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.