题解 | #24点游戏算法#

24点游戏算法

https://www.nowcoder.com/practice/fbc417f314f745b1978fc751a54ac8cb

ls=[]
def fun1(l,s):
    if len(l)==0:
        ls.append(s)
        return
    for x in l:
        l1=l[:]
        l1.remove(x)
        if len(s)==0:
            fun1(l1,x)
            fun1(l1,"("+x)
        else:
            fun1(l1[:],s+"+"+x)
            fun1(l1[:],s+"-"+x)
            fun1(l1[:],s+"*"+x)
            fun1(l1[:],s+"/"+x)

            fun1(l1[:],s+"+("+x)
            fun1(l1[:],s+"-("+x)
            fun1(l1[:],s+"*("+x)
            fun1(l1[:],s+"/("+x)
            
            fun1(l1[:],s+"+"+x+")")
            fun1(l1[:],s+"-"+x+")")
            fun1(l1[:],s+"*"+x+")")
            fun1(l1[:],s+"/"+x+")")

l=input().split()
fun1(l,"")
flag="false"
for x in ls:
    try:
        if eval(x)%1==0 and int(eval(x))==24:
            flag="true"
            break
    except:
        continue
print(flag)

全部评论
可以哈哈
点赞 回复 分享
发布于 05-23 20:47 湖北
意义在哪
点赞 回复 分享
发布于 08-19 11:10 湖南
我丢,厉害厉害
点赞 回复 分享
发布于 08-26 17:32 广东

相关推荐

10-30 23:23
已编辑
中山大学 Web前端
去B座二楼砸水泥地:这无论是个人素质还是专业素质都👇拉满了吧
点赞 评论 收藏
分享
10-15 09:13
已编辑
天津大学 soc前端设计
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务