#!/usr/bin/env ruby def fak n r = 1 (1).upto(n) { |i| r = r*i } return r end def multinom n, ks, ps b = fak(n) prod = 1 ks.each { |k| prod = prod*fak(k) } b = b/prod ps.each_with_index { |p,j| b = b*p**ks[j] } return b end puts multinom(ARGV[0].to_f, ARGV[1].split.map{|i| i.to_f}, ARGV[2].split.map{|i| i.to_f})