RosettaCodeData/Task/Giuga-numbers/Ruby/giuga-numbers.rb

10 lines
175 B
Ruby
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
require 'prime'
giuga = (1..).lazy.select do |n|
pd = n.prime_division
pd.sum{|_, d| d} > 1 && #composite
pd.all?{|f, _| (n/f - 1) % f == 0}
end
p giuga.take(4).to_a