Number spiral diagonals

We can make squares of numbers, by starting with 1, and add numbers in a spiral.

It is easier to show than descripe:

square <- matrix(c(21, 22, 23, 24, 25,20, 7, 8, 9, 10,19, 6, 1, 2, 11,18, 5, 4, 3, 12,17, 16, 15, 14, 13), 5,5,byrow=T) square

[,1] [,2] [,3] [,4] [,5]

[1,] 21 22 23 24 25

[2,] 20 7 8 9 10

[3,] 19 6 1 2 11

[4,] 18 5 4 3 12

[5,] 17 16 15 14 13

This is a 5 by 5 square. Start at 1, add the 2 to the right of that, and add numbers in a clockwise spiral.

If we look at all the numbers in the diagonals, we can see that the sum of those numbers, is 101. Ie, 21 + 7 + 1 + 3 + 13 + 25 + 9 + 5 + 17 = 101

We are now asked: What is the sum of the numbers in the diagonals in a 1001 by 1001 square?

Looking at an n by n square, where n is uneven, we can see that the north-eastern corner of the square will always be n2.

We know that the side is n. So the value of the north-western corner will always be n2 - (n-1).

Similar the south-western corner is n2 - 2(n-1). And the south-eastern is n2 - 3(n-1).

The first “square” is a special case. But I can now calculate the corners in all the squares with unequal n.

The sum of those corners is:

n2 + n2 -(n-1) + n2 - 2(n-1) + n2 - 3(n-1)

Which reduces to:

4*n2 - 6n + 6

If I calculate that for all unequal n from 3 to 1001, sum them, and add 1, I have my answer.

library(purrr) answer <- seq(3,1001,by=2) %>% map(function(x) 4xx - 6*x + 6) %>% unlist() %>% sum() answer <- answer + 1

Lessons learned

Not really.