pythonize this!
Lie Ryan
lie.1296 at gmail.com
Wed Jun 16 06:47:04 EDT 2010
On 06/15/10 21:49, superpollo wrote:
> goal (from e.c.m.): evaluate
> 1^2+2^2+3^2-4^2-5^2+6^2+7^2+8^2-9^2-10^2+...-2010^2, where each three
> consecutive + must be followed by two - (^ meaning ** in this context)
>
> my solution:
>
>>>> s = 0
>>>> for i in range(1, 2011):
> .... s += i**2
> .... if not (i+1)%5:
> .... s -= 2*i**2
> .... if not i%5:
> .... s -= 2*i**2
> ....
>>>> print s
> 536926141
Probably bending the rules a little bit:
>>> sum(x**2 - 8*x - 20 for x in range(1, 2010, 5))
536926141
another variation:
>>> sum((x - 10) * (x + 2) for x in range(1, 2010, 5))
536926141
More information about the Python-list
mailing list