17 lines
325 B
Ruby
17 lines
325 B
Ruby
|
|
require "gmp"
|
||
|
|
|
||
|
|
primorials = Enumerator.new do |y|
|
||
|
|
cur = prod = 1
|
||
|
|
loop {y << prod *= (cur = GMP::Z(cur).nextprime)}
|
||
|
|
end
|
||
|
|
|
||
|
|
limit = 50
|
||
|
|
fortunates = []
|
||
|
|
while fortunates.size < limit*2 do
|
||
|
|
prim = primorials.next
|
||
|
|
fortunates << (GMP::Z(prim+2).nextprime - prim)
|
||
|
|
fortunates = fortunates.uniq.sort
|
||
|
|
end
|
||
|
|
|
||
|
|
p fortunates[0, limit]
|