本文主要是介绍国王分金币,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币......;这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续 N+1天里,每天收到N+1枚金币。
请计算在前K天里,骑士一共获得了多少金币。
输入描述
输入只有1行,包含一个正整数飞 (1K<104),表示发放金币的天数。
输出描述
输出只有1行,包含一个正整数,即骑士收到的金币数。
import os
import sys# 请在此输入您的代码
k=int(input()) #可用的总天数
i=1 #分金币的次数,第一天给一个金币(一次),第二天两个(第二次)
sum=0
while k>=i:sum+=i*ik=k-ii=i+1# print(i)
# print(k)
if k !=0: #假如最后剩10天没用完,此时分到第46次了,原本应该是46天每天46个金币,现在只有10天,所 以 46*10sum=sum+k*iprint(sum)
这篇关于国王分金币的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!