Submit | All submissions | Best solutions | Back to list |
SALES - Sales |
Bosco has gotten his hands on $B$ ($1 \leq B \leq 50$) dollars! Being a Magic the Gathering™ enthusiast, he wishes to spend some amount of his budget on cards to improve his deck.
He has located a local store that has $N$ ($1 \leq N \leq 30,000$) cards for sale. Card $i$ costs $c_i$ ($1 \leq c_i \leq 50$) dollars, and will improve Bosco’s DQI (Deck Quality Index) by $v_i$ ($1 \leq v_i \leq 1000$) points. Only one copy of each card is for sale.
Business hasn’t been too great lately, so the store is offering sales on various days. Though the term “price adjustments” would be more accurate, as card prices can increase, “sales” are much more appealing – and, indeed, Bosco wants to go do all of his shopping on one of the $D$ ($1 \leq D \leq 3000$) days of the sales. In fact, he’s already acquired a list of the price adjustments that will be made.
On day $i$, the cost of card $a_i$ ($1 \leq a_i \leq N$) is changed to $b_i$ ($1 \leq b_i \leq 50$), while all other cards remain unchanged. That is, before day $1$, all cards have their initial costs ($c_{1..N}$), and from then on, price adjustments accumulate from day to day.
Additionally, on each day, only certain cards from the store’s inventory are actually up for sale. In particular, on day $i$, only cards $x_i$ to $y_i$ ($1 \leq x_i \leq y_i \leq N$), inclusive, may be purchased.
Bosco doesn’t care how much of his budget he spends, but he absolutely must have the best possible deck. As such, for each of the $D$ days, he wants to consider buying some (possibly empty) set of cards, such that the sum of their costs is no larger than $B$, and the sum of their DQI points is maximal. Determine this DQI sum for each day, so that Bosco will know when to go to take full advantage of the “sales”.
Input
Line $1$: 3 integers, $B$, $N$, and $D$
Next $N$ lines: 2 integers, $c_i$ and $v_i$, for $i=1..N$
Next $D$ lines: 4 integers, $a_i$, $b_i$, $x_i$, and $y_i$, for $i=1..D$
Output
For each day, output the maximal DQI sum of cards up for purchase that day which Bosco can purchase without going over his budget, considering all price changes that have occurred so far.
Example
Input:
5 5 3 9 6 1 5 2 3 3 11 2 7 1 1 1 4 4 6 3 5 4 1 1 4
Output:
22 10 25
Explanation of Sample:
At first, the 5 cards (with point values 6, 5, 3, 11, and 7, respectively) have costs of 9, 1, 2, 3, and 2 dollars, in that order.
On the first day, the cost of the first card is reduced to 1 dollar, and the first 4 cards are up for purchase.
On the second day, the cost of the fourth card is increased to 6 dollars, and only the last 3 cards can be bought.
On the final day, the cost of card 4 is changed again, this time to 1 dollar, and the first 4 cards are once again considered.
On the first day, Bosco should buy the first, second, and fourth cards, costing a total of 5 dollars.
On the second, cards 3 and 5 should be purchased with 4 dollars, as card 4 is now too expensive.
On the final day, all of the cards up for sale can be bought for 5 dollars. Notice that card 1 still costs 1 dollar, from the first price change.
Added by: | SourSpinach |
Date: | 2013-05-08 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ASM64 |
Resource: | Own problem |
hide comments
2013-05-12 16:41:52 Edelweiss
I agree with Andy. 10000 got SIGSEGV and 30000 got AC. |
|
2013-05-12 16:41:52 Andy Y.F. Huang
I think N <= 10000 is incorrect. I got AC assuming N <= 30000. RE: Right, sorry about that... the problem statement's been updated. Last edit: 2013-05-12 16:42:34 |
|
2013-05-12 16:41:52 Hasan Jaddouh
there somethings wrong with Explanation of Sample I think. At first, the 5 cards have costs of 9, 1, 2, 3, and 2 RE: Oops, thanks - it's been fixed. Last edit: 2013-05-08 23:40:57 |