Watering the Plants
Bessie's garden has N plants labeled 1 through N (2≤N≤5⋅105) from left to right. Bessie knows that plant i requires at least wi (0≤wi≤106) units of water.
Bessie has a very peculiar irrigation system with N−1 canals, numbered 1 through N−1. Each canal i has an associated unit cost ci (1≤ci≤106), such that Bessie can pay cik to provide plants i and i+1 each with k units of water, where k is a non-negative integer.
Bessie is busy and may not have time to use all the canals. For each 2≤i≤N compute the minimum cost required to water plants 1 through i using only the first i−1 canals.
The minimum cost to water the first 2 plants using the first canal is to pay 30⋅69=2070 by using the first canal 69 times.
The minimum cost to water the first 3 plants is to use the first canal 39 times and the second canal 33 times, paying 39⋅30+29⋅33=2127.
SCORING:
- Input 4: N≤200, and all wi≤200.
- Inputs 5-6: All wi≤200.
- Inputs 7-10: N≤5000.
- Inputs 11-14: All wi and ci are generated independently and uniformly at random.
- Inputs 15-19: No additional constraints.
Problem credits: Benjamin Qi
Source: USA Computing Olympiad.
Input Format
The first line contains a single positive integer N.
The second line contains N space-separated integers w1,…,wN.
The third line contains N−1 space-separated integers c1,…,cN−1.
Output Format
Output N−1 newline-separated integers. The (i−1)th integer should contain the minimum cost to water the first i plants using the first i−1 canals.