zoj1629 Counting Triangles

View Code
//边长为n的下三角形个数和边长为2n的上三角形个数是一样多
#include<stdio.h>
int n,f[501];

int main(){
    int i,t;
    for(i=1;i<501;i++)
    {
                t=(i/2==0? i/2:(i+1)/2);//若不管奇数和偶数的区别,t=(i-i/2);
    f[i]=f[i-1]+i*(i+1)/2+t*(i/2);
}
    while(scanf("%d",&n)!=EOF)printf("%d\n",f[n]);
    return 0;
}

这个题目的推导就是

当n=4,

边      正三角形的个数

n=4,      1

n=3,      2

n=2,      3

n=1,      4;

所以正三角形的个数就等于i*(i+1)/2,

而倒三角的个数就是

边长为n的下三角形个数和边长为2n的上三角形个数是一样多

posted @ 2013-05-02 20:22  90后程序媛  阅读(198)  评论(0编辑  收藏  举报