蒟蒻的第一篇思路,欢迎各位神犇指教!
首先,发动了 i 次物理攻击,造成的总物理伤害为 2i−1
其次,不难发现只要最小次数 m 存在,即有解,那么必定会发动一次魔法攻击,证明如下:
假设最小次数 m全部由物理攻击组成,则怪物的血量为 2m−1。如果发动了造成 x点伤害的魔法攻击,则怪物的血量又可以表示为 2k−1+x,k<m,显然也是杀死怪物的一种方法。
于是 2m−1=2k−1+x,即任意一个质数 x都可以表示为2m−2k的形式。但质数 5不能表示成这样,因为它是奇数,则 k=0, m无解。
这便与 m的存在矛盾了,于是对于最小次数 m 其中必定有一次是魔法攻击。
那么这个题目就变得非常简单了,只需要检查发动 i次物理攻击后 怪物的血量是否为质数,那么输出的就是 i+1
注意不要忘记特判!!!不要忘记特判!!!不要忘记特判!!!
特判血量恰好为质数或等于1