煤球数目 第七届蓝桥杯省赛C/C++语言 B组第一题

一:煤球数目


有一堆煤球,堆成三角棱锥形。具体:
第一层放1个,
第二层3个(排列成三角形),
第三层6个(排列成三角形),
第四层10个(排列成三角形),
....
如果一共有100层,共有多少个煤球?


请填表示煤球总数目的数字。

注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

答案:171700

解体思路:

        这道题,首先读题不能有偏差,整体是一个三棱锥,三棱锥是由一层一层的三角形叠起来的,让我们求前100层一共有多少个煤球。

        看懂题目这个题目就很简单了,你会发现每层的个数都有规律,每层的个数是它上一层的个数加上层数,意思就是An = An-1 + n, 题目求的是前100层一共多少煤球。所以是Sn。代码用两个for循环就出来了。

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int a[101] ={0};
    int i,j,sum=0;
    for(i = 1 ; i < 101 ; i++)
    {
        a[i] = a[i-1] + i;
    }

    for(j = 1 ; j < 101 ; j++)
    {
        sum+=a[j];
    }
    printf("%d\n",sum);
    return 0;
}

猜你喜欢

转载自blog.csdn.net/uzzzhf/article/details/80037486
今日推荐