尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
679. 24点游戏(dfs)
链接679. 24 点游戏题解力扣LeetCode官网 - 全球极客挚爱的技术成长平台class Solution { public: static constexpr int TARGET 24; static constexpr double EPSILON 1e-6; static constexpr int ADD 0, MULTIPLY 1, SUBTRACT 2, DIVIDE 3; bool judgePoint24(vectorint nums) { vectordouble l; for (const int num : nums) { l.emplace_back(static_castdouble(num)); } return solve(l); } bool solve(vectordouble l) { if (l.size() 0) { return false; } if (l.size() 1) { return fabs(l[0] - TARGET) EPSILON; } int size l.size(); // 注意一下i,j下表都是从0开始的 for (int i 0; i size; i) { for (int j 0; j size; j) { if (i ! j) { vectordouble list2 vectordouble(); for (int k 0; k size; k) { if (k ! i k ! j) { list2.emplace_back(l[k]); } } for (int k 0; k 4; k) { // 保证加法和乘法的数字不会重复计算 // 保证数字只与自己后面的下标的数字计算乘法和加法 if (k 2 i j) { continue; } if (k ADD) { list2.emplace_back(l[i] l[j]); } else if (k MULTIPLY) { list2.emplace_back(l[i] * l[j]); } else if (k SUBTRACT) { list2.emplace_back(l[i] - l[j]); } else if (k DIVIDE) { if (fabs(l[j]) EPSILON) { continue; } list2.emplace_back(l[i] / l[j]); } if (solve(list2)) { return true; } list2.pop_back(); } } } } return false; } };class Solution { public: bool judgePoint24(vectorint cards) { if (cards.size() 4) { return false; } std::vectordouble nums(cards.begin(), cards.end()); return calc(nums); } bool calc(const std::vectordouble nums) { if (nums.size() 0) { return false; } if (nums.size() 1) { // 判断是否和24相等 return fabs(nums[0] - 24) 0.000001; } // 从剩余的数字中选择两个数字 for (int i 0; i nums.size(); i) { for (int j 0; j nums.size(); j) { // 不能取取同一个数字 if (i j) { continue; } std::vectordouble next; // 存储非ij位置上的数字 for (int k 0; k nums.size(); k) { if (i ! k j ! k) { next.push_back(nums[k]); } } double num 0; // 对i,j数字进行加减乘除 for (int k 0; k 4; k) { if (k 0) { num nums[i] nums[j]; } else if (k 1) { num nums[i] - nums[j]; } else if (k 3) { num nums[i] * nums[j]; } else { // 被除数非0 if (fabs(nums[j]) 0.000001) { num nums[i] / nums[j]; } } // 添加 next.push_back(num); // 递归下一层 if (calc(next)) { return true; } // 回溯 next.pop_back(); } } } // 返回 return false; } };
RELATED

相关推荐

GTM AI智能体架构设计与生产级部署实践指南

GTM AI智能体架构设计与生产级部署实践指南

GTM(Go-To-Market)AI 智能体,指的是面向市场进入、销售运营和客户增长场景的一类 AI 智能体。它把传统依赖人工完成的线索清洗、客户分层、触达文案生成、销售跟进建议等流程,交给由大模型驱动、能调用外部工具的智能体去执行。这…

📅 2026/11/1 20:53:00
【落地镇江 | 江苏大学主办 | IEEE出版社出版,已有确定的ISBN号,稳定EI检索 | 往届快至会后3个月检索| EI会议】第六届计算机图形学、图像与虚拟化研究国际会议(ICCGIV 2026)

【落地镇江 | 江苏大学主办 | IEEE出版社出版,已有确定的ISBN号,稳定EI检索 | 往届快至会后3个月检索| EI会议】第六届计算机图形学、图像与虚拟化研究国际会议(ICCGIV 2026)

第六届计算机图形学、图像与虚拟化研究国际会议(ICCGIV 2026) 2026 6th International Conference on Computer Graphics, Image and Virtualization 2026年9月18-20日 ,中国-镇江-句容市 大会官网:www.iccgiv.net【投稿参会】…

📅 2026/9/26 16:16:31
pip 清华镜像源

pip 清华镜像源

pypi 镜像使用帮助 Pypi | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror pypi 镜像每 5 分钟同步一次。 临时使用 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package注意,simple 不能少, 是 https 而不是 http…

📅 2026/10/3 7:48:28
MORE NEWS

更多资讯

📰

启动报Port 8088 was already in use?先查是谁占的

启动报Port 8088 was already in use?先查是谁占的 项目启动报 Port 8088 was already in use,意思很直白:这个端口已经有人占了。 先说原理:端口是"门牌号",一间房只住一个进程 端口就是一台机器上的门牌号…

📰

担心文档上云?本地运行的办公AI才敢放心用

单位上周开了个会,主题是"AI 提效",散会时领导补了一句:涉及客户资料的文档,不许往云端传。这话一出,会议室里本来跃跃欲试的同事全蔫了——大家平时用的那些在线 AI,文档一上传就不知道存哪儿去…

📰

先能用,再好用:从烂尾复盘到两周上线,全栈项目的‘原型—快速迭代‘方法论

先能用,再好用:从烂尾复盘到两周上线,全栈项目的“原型—快速迭代”方法论 全栈学习路径的文章已经很多了:怎么选技术栈、怎么搭环境、怎么记文档,几乎每个方向都有人写。但一个更扎心的问题很少有人正面讨论——为什…

📰

深度思考模式把 ARC-AGI-2 从 17.6% 拉到 45.1%:对照 Gemini 3 Pro 的三份能力评测,看‘会思考‘改写了哪些边界

深度思考模式把 ARC-AGI-2 从 17.6% 拉到 45.1%:对照 Gemini 3 Pro 的三份能力评测,看“会思考”改写了哪些边界 一、先说结论:变强的不是“知识”,而是“解法” 每次新模型发布,评测榜单都会涨几个点,大…

📰

1.c++入门篇

1.c中的关键字asmdoifreturntrycontinueautodoubleinlineshorttypedefforbooldynamic_castintsignedtypeidpublicbreakelselongsizeoftypenamethrowcaseenummutablestaticunionwchar_tcatchexplicitnamespacestatic_castunsigneddefaultcharexportnewstructusingfriendclassext…

📰

《江灯合声》:有可行的分框版,也仍可以选择连续鸣谢

武汉江岸区栎坡合唱团在免费节目册《江灯合声》中,以表格集中鸣谢资助者。各家共同要求改为独立小框,团里仍想保留表格。现有全名与支持事项清楚可见,双方此前未承诺具体排版。我支持保留表格。补充的试排材料让选择更具体:分框能…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬