Problem Description
Given an equilateral triangle with n the length of its side, program to count how many triangles in it.
![](https://i-blog.csdnimg.cn/blog_migrate/563c63d8622128912bae8489afb75cbd.jpeg)
Input
The length n (n <= 500) of the equilateral triangle's side, one per line.
process to the end of the file
process to the end of the file
Output
The number of triangles in the equilateral triangle, one per line.
Sample Input
1 2 3
Sample Output
1 5 13
递推:将前一个的三角形数+新增的两层大小的三角形数+新增的三层以上的三角形数就得出现在的三角形总数
#include <stdio.h>
int main()
{
__int64 a[505];
int i;
int k;
a[1] = 1;
for(i = 2;i<=500;i++)
{
a[i] = a[i-1]+i*(i+1)/2;
k = i-1;
while(k>0)
{
a[i]+=k;
k-=2;
}
}
while(~scanf("%d",&k))
{
printf("%I64d\n",a[k]);
}
return 0;
}