题解 | #24点游戏算法#

24点游戏算法

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

# 20240922

def f(ls,tar): # ls列表中的数字能否得到24点
    if len(ls) == 1:
        return ls[0] == tar
    else:
        for i in range(len(ls)):
            t = ls[i]
            m = ls[:i] + ls[i+1:]
            if f(m,tar+t) or f(m,tar-t) or f(m,tar*t) or f(m,tar/t):
                return True
        return False




ls = list(map(int,input().split()))
#print(ls)
if f(ls,24):
    print('true')
else:
    print('false')
   

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务