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 pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Nu ezitați să ne contactați pentru orice întrebare sau dacă aveți nevoie de asistență suplimentară. Vă așteptăm cu drag data viitoare și nu uitați să ne adăugați la favorite!