国王金币

国王将金币作为工资,发送给忠诚的骑士,第一天,骑士得到了一枚金币;之后两天(第二三天)每天收到两枚金币,之后三天(第四五六天)每天都到三枚金币;之后四天(第七八九十天),每天收到N枚金币后,骑士会在之后的N+1天里,每天收到N+1枚金币。

请计算在前K天(K<10000)天里,骑士一共获得了多少金币。(例如:K=6时,计算前6天骑士一共获取的金币为:1+2+2+3+3+3=14枚)
sum_key=0
day=int(input("天数:"))
i=1
day_shu=0
while i<=day: #改变金币的个数
    j=1
    while j<=i:#控制金币打印次数
        print(i)
        sum_key+=i
        day_shu+=1#在循环中累加所以不会遍历完i
        j += 1
        if day_shu == day:#当工作天数与领取金币天数相等时结束
             print("前%d天总共获得金币:%d" % (day, sum_key))
             break        #只是跳出内循环,外循环还会继续
    if day_shu == day:#避免重复打印因为外层循环主要为了改变金币数目大小,而内循环控制金币的打印次数,所以i并不能遍历完(打印的几次就是几天)
        break
    i += 1

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值