Sum multiples of 3 and 5: Difference between revisions

Line 870:
# August 24th., 2013.
def g(n1, n2, n3)
g1 = n1*n2; g2 = n3/g1;
(1..g1).select{|x| x%n1==0 or x%n2==0}.collect{|x| g2=(n3-x)/g1; (x+g1*g2+x)*(g2+1)}.inject{|sum,x| sum+x}/2
end
y = x+g1*g2
if y>n3 then (x+g1*(g2-1)+x)*g2 else (y+x)*(g2+1) end
}.inject{|sum,x| sum+x}/2
end
</lang>
2,172

edits