N = gets.not_nil!.to_i P = [0] of Int32 B = [] of Int32 C = [] of Int32 (N-1).times do P << P[-1] + gets.not_nil!.to_i end N.times do b, c = gets.not_nil!.split.map(&.to_i) B << b C << c end D = Array(Int32).new(N, 0) ans = 0 N.times do |i| b = B[i] (0...i).each do |j| break if b == 0 d = [D[j], b].min ans += d * (P[i] - P[j]) D[j] -= d b -= d end D[i] += C[i] end puts ans