def min(a,b); a < b ? a : b; end def max(a,b); a > b ? a : b; end N = gets.to_i AB = (2 .. N).map{ gets.split.map(&:to_i) } SA, SB = AB.transpose.map(&:sum) b_min = AB.inject(0) do |m, (a,b)| max(a + b - SB, m) end puts min(SB + 1, SA + 1) - max(b_min - SA + SB, 0)