*描述
有一个正方形的边长为N,你现在要在这个边长为N的大正方形里面找出一共有多少正方形。
输入
输入一个数字,正方形的边长N(0<=N<=32767)
输出
输出一行,表示一共有多少正方形。
*/
解析:
该题用数学方法解决一个平方和公式便搞定。
因为正方形是个平方问题。
如一个4*4的正方形,考虑包含的1*1,有 4*4个,2*2的正方形,如图,一个边上能放3个不同的正方形,则大正方形内能放有3*3个2*2的小正方形,同理,能放2*2个3*3的小正方形,能放1*1个4*4的正方形。
所以 问题就成了求n阶的平方和问题了。
n= M1~n n^2;
另,平方和公式为n(n+1)(2n+1)/6
则算法为:
s=n*(n+1)*(2*n+1)/6.0;
附平方和公式推导方法: