当前位置: 首页 > news >正文

679. 24 点游戏

Problem: 679. 24 点游戏

文章目录

  • 思路
  • 解题过程
  • 复杂度
  • Code

思路

深度优先搜索。

解题过程

维护一个数组,运算一次会减少一个数字卡片,当只剩下一个卡片的时候检查是否为 24 即可。

复杂度

  • 时间复杂度: O(1)O(1)O(1)

  • 空间复杂度: O(1)O(1)O(1)

Code

class Solution {public:const int AIM = 24;const double EPS = 1e-6;bool judgePoint24(vector<int>& cards) {vector<double> way;for (auto &n : cards) {way.emplace_back(static_cast<double>(n));}return dfs(way);}bool dfs(vector<double> &w) {int s = w.size();if (s == 0) return false;if (s == 1) return fabs(w[0] - AIM) < EPS;for (int i = 0; i < s; i++)for (int j = 0; j < s; j++)if (i != j) {vector<double> ww = vector<double>();for (int k = 0; k < s; k++)if (k != i && k != j)ww.emplace_back(w[k]);if (i > j) {ww.emplace_back(w[i] + w[j]);if (dfs(ww)) return true;ww.pop_back();ww.emplace_back(w[i] * w[j]);if (dfs(ww)) return true;ww.pop_back();}ww.emplace_back(w[i] - w[j]);if (dfs(ww)) return true;ww.pop_back();if (fabs(w[j]) > EPS) {ww.emplace_back(w[i] / w[j]);if (dfs(ww)) return true;ww.pop_back();}}return false;}};
http://www.dtcms.com/a/337322.html

相关文章:

  • Android Cutout(屏幕挖孔)详解
  • ubuntu 编译ffmpeg6.1 增加drawtext,libx264,libx265等
  • Leetcode 3648. Minimum Sensors to Cover Grid
  • OCR库pytesseract安装保姆级教程
  • LeetCode:无重复字符的最长子串
  • SQLite 加密与不加密性能对比与优化实践
  • Opsqueue:为重负载而生的轻量级批处理队列,已开源!
  • 视频因为264问题无法网页播放,解决方案之一:转化视频
  • 智创飞跃|2025 Google 开发者大会伴你成长精进
  • 兴趣爱好——虾哥开源小智AI机器人搭建(丐版—最低成本)ESP32开发板 MicroPython V1.0.0 Rev1
  • 嵌入式Linux学习 -- 进程和线程4
  • 三高架构杂谈
  • Ansible 自动化运维实践笔记:Jinja2 模板、LNMP+WordPress 部署与大项目管理
  • 飞算JavaAI智慧校园场景实践:从校园管理到师生服务的全链路技术革新
  • 【C++✨】多种 C++ 解法固定宽度右对齐输出(每个数占 8 列)
  • 常见的光源频闪控制方式
  • GitHub 热榜项目 - 日榜(2025-08-18)
  • 为什么有些相机“即插即用”,而有些则需要采集卡?
  • 联动无影(TscanPlus)送激活码
  • 短剧小程序系统开发:推动短剧行业规范化与标准化发展
  • 【计算机网络】TCP/IP
  • 决策树简单实战
  • 【github-action 如何为github action设置secrets/environment】
  • 《软件工程导论》实验报告六 设计建模工具的使用(二)
  • 蓝牙AOA定位技术在智慧仓储中的优势与挑战
  • Python 面向对象三大特性详解(与 C++ 对比)
  • (nice!!!)(LeetCode 每日一题) 679. 24 点游戏 (深度优先搜索)
  • 华曦达港股IPO观察丨以创新研发为笔,构建AI Home智慧生活新蓝图
  • 图形自动化:pynput实现Win11系统动作点击录制与回放
  • 【HarmonyOS】应用设置全屏和安全区域详解