正方形
时间限制(普通/Java):1000MS/3000MS 运行内存限制:65536KByte
总提交:803 测试通过:82
描述
有一个正方形的边长为N,你现在要在这个边长为N的大正方形里面找出一共有多少正方形。
输入
输入一个数字,正方形的边长N(0<=N<=32767)
输出
输出一行,表示一共有多少正方形。
样例输入
2
样例输出
5
提示
题目来源
NUAA
分析:是前n项的平方和:是n*(n+1)*(2n+1)/6 但由于范围是0-32767所以结果过大要用double类型。而开始错误的将n的值用int了,导致中间计算就越界了,把n改为double行就ac了。
#include <stdio.h>
int main()
{
double n,s;
scanf("%lf",&n);
s=n*(n+1)*(2*n+1)/6.0;
printf("%.0lf\n",s);
}