Ice Pillars

View as PDF

Submit solution

Points: 15 (partial)
Time limit: 0.6s
Memory limit: 64M

Problem type
Allowed languages
Ada, Assembly, Awk, Brain****, C, C#, C++, COBOL, CommonLisp, D, Dart, F#, Forth, Fortran, Go, Groovy, Haskell, Intercal, Java, JS, Kotlin, Lisp, Lua, Nim, ObjC, OCaml, Octave, Pascal, Perl, PHP, Pike, Prolog, Python, Racket, Ruby, Rust, Scala, Scheme, Sed, Swift, TCL, Text, Turing, VB, Zig
2015 Mock CCC by Alex and Timothy

Miyuki is competing in a sports event known as the Ice Pillars Break. In this event, there are N (2 \le N \le 100\,000) ice pillars placed in a line and conveniently numbered 1..N from left to right. Pillar i has a durability D_i (1 \le D_i \le 10^9) and a weight W_i (0 \le W_i \le 10^9) for i = 1..N. Each second, Miyuki can reduce the durability of any pillar by 1. When a pillar's durability becomes less than or equal to 0, it collapses and removes durability equal to its weight from each of the two pillars adjacent to it (pillars 1 and N only have one other pillar adjacent to them). Miyuki wants to finish with as fast a time as possible, so please help her calculate the minimum number of seconds it will take to collapse all of the pillars.


In addition to the constraints above, the following will hold:

  • For test cases worth 20% of the points, N \le 8.
  • For test cases worth 60% of the points, N \le 300, D_i, W_i \le 1\,000.

Input Format

The first line of input will have the integer N.
For the next N lines, the i^{th} of these lines will contain two space-separated integers D_i and W_i.

Output Format

Output one integer, the minimum number of seconds required to reduce the durability of all pillars to 0 or lower.

Please note that this answer may be very large and is not guaranteed to fit within a 32-bit integer.

Sample Input 1

5 5
7 2
8 1
2 0
1 3

Sample Output 1


Explanation for Sample 1

Destroy the 5th pillar, then the 1st pillar, then the 2nd pillar, and finally the 3rd pillar. At this point, the 4th pillar will already be destroyed.

Sample Input 2

5 6
6 4
4 0

Sample Output 2


Explanation for Sample 2

If you knock over the 1st pillar, you get a chain reaction which destroys all other pillars.