(每日一练65902)题目名称:传奇霸业

文盲老顾
WEB应用领新星创作者
博客专家认证
2023-04-19 10:52:09

传奇霸业,是兄弟就来干。 小春(HP == a)遇到了一只黄金哥布林(HP == x)。 小春每次能对哥布林造成b点伤害,哥布林每次能对小春造成y点伤害。 作为玩家的小春怎么可能随便让哥布林打死呢!他有治疗神药,每次能恢复c点HP。 HP无上限。 小春需要操作多少次才能打死哥布林?(治疗+攻击)

正常来讲,就是水多加面,面多加水的问题,不知道怎么用算法描述,当一击能搞死哥布林的时候攻击,否则如果哥布林攻击比当前血量高就吃药

a,b,c = map(int,input().split())
x,y = map(int,input().split())
n = 0
while x > 0:
    if a <= y and b < x:
        a += c - y
    else:
        x -= b
        a -= y
    n += 1
print(n)

如果血量非常高,攻击非常刮痧。。。。。也许这个效率就差太多了,还是用数学的方法来解决吧

a,b,c = map(int,input().split())
x,y = map(int,input().split())
n = (x - 1) // b + 1   # 看看几下搞死哥布林
e = ((n - 1) * y) - a + 1 # 看看这几次攻击期间,哥布林搞了咱们多少血,这里的加1和减1才是精髓,如果不理解可以发评论哦
if e > 0: # 如果哥布林攻击超出血量
    n += (e - 1) // (c - y) + 1 // 看看需要吃几次药
print(n)
...全文
98 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

321

社区成员

发帖
与我相关
我的任务
社区描述
主要用于技术交流,包括但不限于 .net,mssql,js,css,python,算法,运维。也可以晒最新技术,美图,运动等。最后,如果有问题,可以提问,老顾能帮忙的会尽量帮忙哦。
前端sqlserverasp.net 技术论坛(原bbs) 北京·西城区
社区管理员
  • 文盲老顾
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧