k=eval(input()) c=1#金币数 sum=t=0 for i in range(1,k+1): sum=sum+c t+=1#相当于每一列的计数器比如说第二行应该是两列如果出现第三列就要到下一行去,即t就要清零 if t==c: c=c+1 t=0#类似于计数器如果这一行满了就清零 print(sum)
该题我起初用的是双层循环,我是这样理解的1*1+2*2+3*3*3但是结果不是这个应该和在天数处理上出现了问题。
我的写法我是这样理解的:首先我们确定金币和天数是增加的。以前的题都是天数增加但是金币不增加(即自变量是天数,金币数是因变量)
我们用天数作为循环的条件(注意为啥k+1?因为python中右边是闭区间但是我们的天数要从1开始)第一天金币是1而当天数和金币数相等时下一天的金币数就随之加1
类似于数字塔1、2 2、3 3 3、4 4 4 4