Problem 28

Starting with the number 1 and moving to the right in a clockwise direction a 5 by 5 spiral is formed as follows:

21 22 23 24 25
20 07 08 09 10
19 06 01 02 11
18 05 04 03 12
17 16 15 14 13

It can be verified that the sum of both diagonals is 101.

What is the sum of both diagonals in a 1001 by 1001 spiral formed in the same way?

Observing that the four corners of the spiral can be expressed by:

k2,
k2-k+1,
k2-2k+2,
k2-3k+3,

We get:

?View Code PYTHON
def spiralx(n):
  sum = 0
  for k in range(3,n+1,2):
    sum = sum + (4 * k**2) - 6*k + 6
  print sum + 1
 
>>> spiralx(5)
101
>>> spiralx(3)
25
>>> spiralx(1001)
669171001

Tags: , , , ,

Leave a Reply