Python/project_euler/problem_12/sol2.py

9 lines
278 B
Python
Raw Normal View History

2018-12-06 19:28:33 +00:00
def triangle_number_generator():
for n in range(1,1000000):
yield n*(n+1)//2
def count_divisors(n):
return sum([2 for i in range(1,int(n**0.5)+1) if n%i==0 and i*i != n])
print(next(i for i in triangle_number_generator() if count_divisors(i) > 500))