题解 | #24点游戏算法#

24点游戏算法

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

//类似深度搜索
let status;
while(line = readline()) {
    let arr = line.split(' ').map(x => parseInt(x));
    status = false;
    dfs(-1, 0, arr, status);
    print(status);
}

function dfs(step, pre, arr) {
    if (step == 3) {
        if (pre == 24) {
            status = true;
            return;
        }
    } else {
        step++;
        for (let key in arr) {
            let newArr = JSON.parse(JSON.stringify(arr));
            let num = newArr.splice(key, 1)[0];
            dfs(step, pre+num, newArr);
            dfs(step, pre-num, newArr);
            dfs(step, pre*num, newArr);
            dfs(step, pre/num, newArr);
        }
        return;
    }
}
全部评论

相关推荐

01-16 18:48
四川大学 Java
KalznAsawind:人问他哪一个是pdd,他倒介绍起来了。。。
点赞 评论 收藏
分享
2024-12-23 11:36
中南大学 Java
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务