题解 | #24点游戏算法#

24点游戏算法

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

参考了别人的


/*HJ6724点游戏算法
dfs递归求解
*/
#include<iostream>
#include<vector>
using namespace std;
int dfs(vector<double>n,double result)
{
    if(n.empty()) 
    {
        if(result==24)return 1;
        else return 0;
    }
	else 
    {
        for(int i=0;i<n.size();i++)
        {    	
    	   vector<double>a(n);
    	   a.erase(a.begin()+i);
    	   if(dfs(a,result+n[i])||dfs(a,result-n[i])||dfs(a,result*n[i])||dfs(a,result/n[i]))
    	   return 1;
	     }
        return 0;
    }    
}
int main()
{
    vector<double>n(4);
    for(int i=0;i<4;i++)
        cin>>n[i];
    if(dfs(n,0)) cout<<"true"<<endl;
    else cout<<"false"<<endl;
}


全部评论
插眼
点赞 回复 分享
发布于 2023-06-29 14:09 安徽

相关推荐

07-09 18:28
门头沟学院 Java
写着提前批,结果还要实习4个月以上???
程序员牛肉:这种不用看,直接投了,面试的时候问对应的HR就行。有可能他们是直接复制的暑期实习的模板。
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-07 13:46
点赞 评论 收藏
分享
废物一个0offer:认真的吗二本本科找人工智能岗位
点赞 评论 收藏
分享
评论
3
1
分享

创作者周榜

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