(Problem 28)Number spiral diagonals

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?

#include<stdio.h>
#include<string.h>
#include<math.h>
#include<ctype.h>
#include<stdlib.h>
#include<stdbool.h>


void countSum()
{
	int i=3;
	int sum=1;
	int n=(1001+1)/2-1;
	while(n--)
	{
		int t=i*i;
		sum+=(4*t-(i-1)*6);
		i=i+2;
	}
	printf("%d\n",sum);
}

int main()
{
	countSum();
	return 0;
}

Answer:
669171001

你可能感兴趣的:(number)