题解 | #24点游戏算法#

24点游戏算法

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

def f(ls,tar):
    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

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

全部评论

相关推荐

投递华为等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务