题解 | #24点游戏算法#

24点游戏算法

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

没什么新意, 纯暴力破解
import itertools
num = input().split(' ')

def find(num):
    possible = 'false'
    for nums in itertools.permutations(num):
        for one in '+-*/':
            for two in '+-*/':
                for three in '+-*/':
                    cmd = nums[0]+one+nums[1]+two+nums[2]+three+nums[3]
                    for i in [0,2,4,6]:
                        cmd_left = cmd[0:i]+'('+cmd[i::]
                        for j in [len(cmd_left)-2*k for k in range(4)]:
                            cmd_right = cmd_left[0:j] + ')' + cmd_left[j::]
                            try:
                                r = eval(cmd_right)
                                if r == 24:
                                    possible = 'true'
                                    return possible
                            except:
                                pass
    return possible
print(find(num))




全部评论
1 5 1 3好像不行
点赞 回复 分享
发布于 2022-09-18 12:01 河南

相关推荐

机械打工仔:我来告诉你原因,是因为sobb有在线简历,有些HR为了快会直接先看在线简历,初步感觉不合适就不会找你要详细的了
投了多少份简历才上岸
点赞 评论 收藏
分享
难怪不开摄像头,全是简单的性格题,比大疆友善多了
NULL10086:今早上发的测评,我这还没做呢,官网上已经显示挂了
投递大疆等公司7个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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