Home

Archivos

Buscar

Categorías

Feeds:

RSS / Atom

Project Euler 12· 25. February 2008, 22:22

El problema de numero mas bajo que no habia resuelto quedo hoy:

require 'rational'
require 'mathn'
class Integer
  def triangle
    self*(self+1)/2
  end
  def divisores
    tot=1
    #~ p self.prime_division
    self.prime_division.each{|v| tot*=(v[1]+1)} #los exponentes indican cuantos divisores hay
    tot
  end
end
a=1
while true do
  x=a.triangle
  y=x.divisores
  if y>500
    puts "#{a}:#{x}:#{y}"
    exit
  end
  a+=1
end