n = gets.to_s.to_i a = gets.to_s.split.map { |v| v.to_i } b = gets.to_s.split.map { |v| v.to_i } f = ->x { n.times.sum { |i| b[i] * (a[i] - x).abs } } lo = a.min hi = a.max while hi - lo > 2 left = (lo * 2 + hi) / 3 right = (lo + hi * 2) / 3 if f[left] < f[right] hi = right else lo = left end end x = (lo + hi) / 2 y = f[x] puts [x, y].join(" ")