题解 | #24点游戏算法#

def digui(arr,item):
    if item < 1:
        return False
    if len(arr) == 1:
        if arr[0] == item:
            return True
        else:
            return False
    else:
        for i in range(len(arr)):
            n = arr[i]
            m = arr[0:i] + arr[i + 1:]
            if digui(m, item + n) or digui(m, item - n) or digui(m, item / n) or digui(m, item * n):
                return True
        return False


while True:
    try:
        arr = list(map(int, input().split()))
        re = digui(arr, 24)
        if re:
            print('true')
        else:
            print('false')
    except:
        break
全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务