Ia uite, frate! E numărul meu norocos cu săgeată!
În anul , pe faimoasa Route din America se aflau benzinării. Route începe din Chicago și se termină în Los Angeles, conectând cele metropole americane. Benzinăriile sunt descrise prin borna de mile în dreptul căreia sunt, așa că benzinăria de pe poziția se află la mila față de punctul de start, Chicago.
În ziua de iulie , o mulțime de familii americane se întorc din Los Angeles (locul unde lucrează toți americanii din ) pe Route , pentru a petrece Ziua Independenței cu familiile lor din Chicago (locul unde locuiesc toți americanii din ). Fiecare mașină este caracterizată de benzinăria în dreptul căreia se află în momentul de față. Toate familiile au o sumă de dolari. Guvernul taxează fiecare milă deplasată cu dolar și fiecare benzinărie pe lângă care trece o mașină cu dolari. Așa că, dacă o mașină este în dreptul benzinăriei și vrea să se oprească la benzinăria , cu (mașinile merg doar înspre Chicago, nu se întorc), atunci costul plătit de o familie este . Așadar, o familie poate ajunge la o anumită benzinărie doar dacă suma de dolari poate acoperi costul drumului.
Cerință
Franklin D. Roosevelt (președintele S.U.A. din ) vă cere să calculați următoarele valori pentru a înțelege mai bine viața unui simplu american:
- Cea mai apropiată benzinărie de Chicago la care poate ajunge o mașină aflată inițial la benzinăria , pentru fiecare benzinărie din cele .
- Numărul maxim de mașini care pot alimenta cu benzină dacă, în fiecare benzinărie, poate alimenta maximum o mașină. Pentru ca o mașină să alimenteze în benzinăria trebuie să iși permită să ajungă până la aceasta (o mașină poate alimenta la o benzinărie dacă suma ei rămasă de bani după plătirea drumului este ).
Date de intrare
Pe prima linie a fișierului de intrare benzina.in se găsește , cerința care trebuie rezolvată.
Pe a doua linie se găsesc trei numere naturale: , reprezentând numărul de benzinării, taxa pentru trecerea pe lângă o benzinărie și suma de dolari pe care o deține fiecare familie.
Pe a treia linie se găsesc numere naturale: , reprezentând distanțele la care se află cele benzinării față de Chicago.
Pe a patra linie se găsesc numere naturale: , reprezentând numărul de mașini care se află în dreptul fiecărei benzinării.
Date de ieșire
- Dacă , atunci pe prima linie a fișierului de ieșire
benzina.outse vor găsi numere naturale , unde reprezintă cea mai apropiată benzinărie de Chicago la care poate ajunge o mașină aflată inițial la benzinăria . - Dacă , atunci pe prima linie a fișierului de ieșire
benzina.outse va găsi un singur număr natural , reprezentând numărul maxim de mașini care pot alimenta cu benzină.
Restricții și precizări
- ;
- ;
- ;
- ;
- ;
- , pentru ;
# Punctaj Restricții 1 13 și 2 28 3 7 și 4 29 și 5 23
Exemplul 1
benzina.in
1
4 2 5
1 3 5 8
2 0 1 0
benzina.out
1 1 2 3
Explicație
, deci trebuie să rezolvăm cerința . Sunt benzinării, taxa guvernului pentru fiecare benzinărie depășită este și suma de dolari a fiecărei familii este .
- O mașină aflată la benzinăria poate ajunge la benzinăria .
- O mașină aflată la benzinăria poate ajunge la benzinăria .
- O mașină aflată la benzinăria poate ajunge la benzinăria .
- O mașină aflată la benzinăria poate ajunge la benzinăria .
Exemplul 2
benzina.in
2
4 2 5
1 3 5 8
2 0 1 0
benzina.out
2
Explicație
, deci trebuie să rezolvăm cerința . Numărul maxim de mașini care pot fi alimentate este . O soluție cu acest număr maxim este următoarea:
- Prima mașină de la benzinăria alimentează la benzinăria .
- A doua mașină de la benzinăria nu alimentează.
- Mașina de la benzinăria alimentează la benzinăria .
Se poate demonstra că numărul maxim de mașini care pot alimenta în acest caz este .