题解 | #24点游戏算法#

24点游戏算法

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

#include <stdio.h>

float a[4];
int use[4]={0};
float result=0;
int bool=0;
void dfs(float res,int deep)
{
    if(deep==4)
    {
        if(res==24)
        {
            bool=1;
        }
        return;
    }
    int i;
    for(i=0;i<4;i++)
    {
        if(use[i]==1)
        {
            continue;
        }else{
            use[i]=1;
            dfs(res+a[i],deep+1);
            dfs(res-a[i],deep+1);
            dfs(res*a[i],deep+1);
            dfs(res/a[i],deep+1);
            if(res!=0)
            {
                dfs(a[i]/res,deep+1);
            }
            dfs(a[i]-res,deep+1);
            use[i]=0;
        }

    }
}
int main() {
     scanf("%f%f%f%f",a,a+1,a+2,a+3);
     dfs(result,0);
     if(bool)
     {
         printf("true\n");
     }else{
         printf("false\n");
     }
}

全部评论
全靠楼里大佬们,自己看题一脸懵,但是没有找到包含了括号的情形的。有看到的友友们踢我
点赞 回复 分享
发布于 2023-11-20 18:07 广东

相关推荐

06-27 18:53
门头沟学院 Java
这样才知道自己不适合搞代码,考公去咯
码农索隆:好家伙,我这干的挺好,我老妈还劝我考公呢
点赞 评论 收藏
分享
Rena1ssance_:对的,要是面评没太烂,勤更新简历等捞就行了,腾讯可以无限复活
点赞 评论 收藏
分享
强大的马里奥:不太可能,我校计算机硕士就业率99%
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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