列表

详情


easy_python

平台   MISC   已通过

题目作者: 树木有点绿

一  血: ‌‌‌‌‌‌‌‌‌‌‬‌‌

一血奖励: 3金币

解  决: 305

提  示:

描  述: 听说python很简单?那你真的可以利用你学的知识击杀掉穿山甲嘛?

附  件: 下载

站长题解:

import base64

level = input('输入等级: ')
if not level.isdigit():
    level = 10000
else:
    level = int(level)

class user():
    HP=int(100+(4*level)) # 100
    Danger=int(10+(3*level)) # 10
    Defence=int(5+(1*level)) # 5

class npc():
    name='穿山甲'
    HP=(3**15) # 14348907
    Danger=(3**10) # 59049
    Defence=100

print('面板\t血量\t攻击力\t防御力\t\n'),
print('玩家 %s\t%s\t%s\t\n'%(user.HP,user.Danger,user.Defence)),
print('怪物 %s\t%s\t%s\t\n'%(npc.HP,npc.Danger,npc.Defence)),

user.Danger = user.Danger - npc.Defence  # -90
npc.Danger = npc.Danger - user.Defence   # 59044

if user.Danger <= 0:
    user.Danger = 1
if npc.Danger <= 0:
    npc.Danger = 1
print("开始战斗".center(41,'^'))

while True:
    npc.HP = npc.HP - user.Danger
    print('你对%s造成了%s 怪物剩余血量 %s\t\n'%(npc.name,user.Danger,npc.HP))
    user.HP = user.HP-npc.Danger
    print('%s对你造成了%s 你剩余血量 %s\t\n'%(npc.name,npc.Danger,user.HP))
    if npc.HP<=0 and user.HP<=0:
        print('平局!!!')
        break
    if npc.HP <=0:
        print('你赢了!!!,你剩余血量 %s\t\n'%(user.HP)),
        flag = base64.b64encode(f'{level}'.encode()).decode()
        print('flag{' + f'{flag}' + '}')
        break
    if user.HP <=0:
        print('你死了!!!%s剩余血量 %s\t\n'%(npc.name,npc.HP)),
        break

去做题

xiaoxiao972521 @ 2024-03-07 23:20:17 👍0

是简单,就是循环忘了注释打怪的过程了,还手贱存了个日志,差点没把我卡死


xiaoxiao972521 @ 2024-03-07 23:20:17 👍0

让我看看有多easy


hydrochloride @ 2024-01-07 23:20:17 👍0

提示虽然是杀死,但其实是要满足赢的条件而不能是平局,写的循环爆出来是56389,结果在这个基础上+1


啊这这 @ 2024-01-07 23:20:17 👍0

我不知道大佬们怎么做的,我单纯就是先测出能杀死穿山甲的区间,原有代码基础上改循环,如果杀死就做一个标志,判断如果有标志就停止


xiaoxiao972521 @ 2024-03-07 23:20:17 👍0

我直接while 1: 然后 python game.py > 123.log 过会儿查你赢了仨字


不会编程的崽 @ 2023-08-07 23:20:17 👍0

直接在源程序上,,套一个while循环,然后注释掉其他print只留打印level的,跑一会就出来了


Tummyiii @ 2023-08-07 23:20:17 👍0

还可以


aWxvdmVjdGY @ 2023-06-07 23:20:17 👍0

代码修改一下,稍微试一下就出来了


INEOS @ 2023-06-07 23:20:17 👍1

有bug,为什么我已经把穿山甲的hp打空了,它还能给我来最后一下,然后强行平局


Byxs20 @ 2023-06-07 23:20:17 👍0

太简单 循环就完事了,坐等出结果!


ns123 @ 2023-06-07 23:20:17 👍0

找出赢的条件,然后二分法爆破求解。