Э
Я по рабоче-крестьянски:
def multiply_hash(*hashes)
hashes.inject(Hash.new(1)) { |old, new| old.merge(new) { |_, o, n| o * n } }
end
h1 = {a: 5, b: 10}
h2 = {a: 2, b: 3, c: 20}
h3 = { b: 9, d: 4}
multiply_hash(h1, h2, h3)
# => {:a=>10, :b=>270, :c=>20, :d=>4}