Project Euler 120

http://projecteuler.net/index.php?section=problems&id=120


(a-1)n + (a+1)na2の剰余は、nが奇数なら

2an

偶数なら

2

だから、nが奇数なら

rmax = a(a-1)

偶数なら

rmax = a(a - 2)

となります。

def r_max(a):
    return a * (a - 2) if a % 2 == 0 else a * (a - 1)

print sum(r_max(a) for a in xrange(3, 1001))