本文共 372 字,大约阅读时间需要 1 分钟。
当我看到这个问题时,我首先想明确怪兽的血量。假设每只怪兽的血量都是h,每 second I deal a points of damage和对方每 second b points of damage。因此,两人一 second共能打a + b点血量。接下来我需要计算每只怪兽的总血量h所需的时间t= h/(a+b),这可能涉及模运算。例如,如果h不是a + b的倍数,处理这种情况将非常关键。
首先处理每个怪兽的血量,比如说h:使用公式f[i]=h%(a+b),如果余数为0,则将其设为a + b; 然后计算施法次数:(f[i]-1)/a。特殊情况下,如果f[i]已经是0,则直接设为a + b。接着将所有怪兽的施法次数排序,从小到大排列。最后根据k的值来计算最多能打多少只怪兽。每当k大于等于当前怪兽的施法次数时,就能打下去,直到k不够为止。
转载地址:http://ebpaz.baihongyu.com/