n, k = gets.chomp.split.map(&:to_i)
a = gets.chomp.split.map(&:to_i)
f = gets.chomp.split.map(&:to_i)

a.sort!.reverse!
f.sort!

tmp = []
n.times do |i|
  tmp.push(a[i] * f[i])
end

k.times do
  ind = tmp.index(tmp.max)
  tmp[ind] -= f[ind]
end
p tmp.max
