Sha256: 433e273ff393f48f84767f205efdb0b7d0702fa701fbb11286c61ab3a219bd3a
Contents?: true
Size: 321 Bytes
Versions: 2
Compression:
Stored size: 321 Bytes
Contents
class Integer def e_divisors return [1] if self == 1 pfacts = primaries comb = pfacts.map{|p,a| (1..a).select{|b| a.divides?(b)}.map{|b| p**b}} comb.flatten.permutation(pfacts.size).select do |perm| perm.each_with_index.all?{|x,i| comb[i].include? x} end.map{|perm| perm.reduce(:*)} end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
numb-0.152.0 | lib/numb/e_divisors.rb |
numb-0.138.0 | lib/numb/e_divisors.rb |