N = gets.to_i A = gets.split.take(N).map(&:to_i) M = gets.to_i B = gets.split.take(M).map(&:to_i) a = A.sort_by!{|v|-v} b = B.sort_by!{|v|-v} used = [false] * N b.each_with_index{|box, i| a.each_with_index{|x, j| next if used[j] || box < x box -= x used[j] = true } if used.all? p i + 1 exit end } p -1