Compute the Number Spiral Diagonals

  • 时间:2020-10-11 15:48:46
  • 分类:网络文摘
  • 阅读:119 次

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  7  8  9 10
19  6  1  2 11
18  5  4  3 12
17 16 15 14 13

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

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

Sum of Number Spiral Diagonals

It is easy to observe that the sum of spiral diagonals are in groups of four: 1, (3, 5, 7, 9), (13, 17, 21, 25) … And the step is incremented by two and we know the last number is the top right corner and its value is N*N if N is the size of the spiral matrix (either row and column).

Thus, we can simulate the process by adding the four numbers and increment the step every four numbers.

1
2
3
4
5
6
7
8
9
10
11
12
function computeSumOfSpiralDiagonals(n) {
  const last = n*n;
  let sum = 1, d = 2, k = 0;
  for (let i = 3; i <= last; i += d) {
      sum += i;
      k ++;
      if (k % 4 == 0) {
          d += 2;
      }
  }
}
console.log(computeSumOfSpiralDiagonals(1001));
function computeSumOfSpiralDiagonals(n) {
  const last = n*n;
  let sum = 1, d = 2, k = 0;
  for (let i = 3; i <= last; i += d) {
      sum += i;
      k ++;
      if (k % 4 == 0) {
          d += 2;
      }
  }
}
console.log(computeSumOfSpiralDiagonals(1001));

–EOF (The Ultimate Computing & Technology Blog) —

推荐阅读:
某本书正文所标注的页码共用了2989个阿拉伯数字,问这本书的正文一共有多少页?  有两棵古槐树,500年前有个学者说  高中生儿童节作文  勿以恶小而为之勿以善小而不为  美丽的长岛作文  月是故乡明  我的调查报告作文  校园烟酒浅谈作文900字  美丽的小院作文  百年世博,梦圆上海 
评论列表
添加评论