项目描述: (Python解)
有一堆砖,需要按照一定规律进行堆放,具体堆放规律如下:
顶层放1块砖,
第二层放3块砖,
第三层放6块砖,
第四层放10块砖,
……
以此类推,每一层砖块的数量为上一层砖块数量加上本层的层数。例如第五层为10 + 5 = 15块砖。
输入砖块堆放的总层数,按照以上规律,求出砖块的总数。
编程实现:
输入砖块堆放的总层数,按照以上堆放规律,求出砖块的总数。
例如:输入为3,总层数为3层的砖块堆放一共有1+3+6=10块砖,则输出10。
输入:
输入一个正整数N(2
输出:
输出砖块的总数
输入样例:
3
输出样例:
10
n = int(input().strip())
dp = [0]*(n+1)
for i in range(1, n+1):
dp[i] = dp[i-1]+i
print(sum(dp))
或者只用两个变量,一个保存每层的数量,一个累加,最后输出累加值即可
n = int(input().strip())
res = level = 0
for i in range(1, n+1):
level += i
res += level
print(res)
N = int(input()) #获取输入
assert N > 0 and 2 < N < 1000 #判断输入的合法性
print(sum([sum([i for i in range(1, n+1)]) for n in range(1, N+1)])) #输出结果
运行结果:
?
不知道你这个问题是否已经解决, 如果还没有解决的话: