(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?
原题大意:
从数字1开始向右顺时针方向移动,可以得到如下的5×5的螺旋:
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
可以算出对角线上数字之和是101. 1001×1001的螺旋中对角线上数字之和是多少?
//(Problem 28)Number spiral diagonals // Completed on Thu, 25 Jul 2013, 14:31 // Language: C // // 版权所有(C)acutus (mail: acutus@126.com) // 博客地址:http://www.cnblogs.com/acutus/ #include<stdio.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 |
作者:acutus
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.