1132: 正方形计数
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 69 Solved: 34
[Submit][Status][Web Board]
Description
给你一个N行N列的格子,从其中取出四个格子。要求将取出的每个格子的中心点连接起来,正好形成一个正方形。问有多少种构成方法。
Input
测试数据有多组,以一个数字零代表结束。每个数据一行,代表N,N<=100
Output
如题。
Sample Input
3
4
0
Sample Output
6
20
HINT
很明显是公式题。
暴力查规律推的公式 = =
我也查不到题解。
http://begin.lydsy.com/JudgeOnline/problem.php?id=1132
#include <bits/stdc++.h>
using namespace std;
long long d[105];
int main()
{
d[2]=1;
d[3]=6;
int t=14,y=16,x=9;
for(long long i=4;i<=100;i++)
{
d[i]=d[i-1]+t;
t=t+y;
y+=x;
x+=2;
//cout<<t<<' '<<y<<' '<<x<<endl;
}
long long n;
while(cin>>n&&n)
{
cout<<d[n]<<endl;
}
}