require_relative 'euler' def triangle_enumerator Enumerator.new do |y| sum = 1 next_num = 2 loop do y << sum sum += next_num next_num += 1 end end end def solution triangle_enumerator.take_while { |x| x.divisors.count <= 500 }.last end