Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
Consecutive Summers (algebraic) solution in Clear category for Count Consecutive Summers by JohanL
from math import sqrt
def count_consecutive_summers(num):
return sum(1 for n in range(1,int(sqrt(2*num+1/4)+1/2)) if num%n == (1-n%2)*n//2)
if __name__ == '__main__':
print("Example:")
print(count_consecutive_summers(42))
# These "asserts" are used for self-checking and not for an auto-testing
assert count_consecutive_summers(42) == 4
assert count_consecutive_summers(99) == 6
assert count_consecutive_summers(1) == 1
print("Coding complete? Click 'Check' to earn cool rewards!")
Dec. 7, 2018