21 lines
461 B
Ruby
21 lines
461 B
Ruby
require "prime"
|
|
|
|
class Integer
|
|
def square_free?
|
|
prime_division.none?{|pr, exp| exp > 1}
|
|
end
|
|
end
|
|
|
|
puts (1..145).select(&:square_free?).each_slice(20).map{|a| a.join(" ")}
|
|
puts
|
|
|
|
m = 10**12
|
|
puts (m..m+145).select(&:square_free?).each_slice(6).map{|a| a.join(" ")}
|
|
puts
|
|
|
|
markers = [100, 1000, 10_000, 100_000, 1_000_000]
|
|
count = 0
|
|
(1..1_000_000).each do |n|
|
|
count += 1 if n.square_free?
|
|
puts "#{count} square-frees upto #{n}" if markers.include?(n)
|
|
end
|