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

[leetcode]24-game

. - 力扣(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(vector<int> &nums) {vector<double> l;for (const int &num : nums) {l.emplace_back(static_cast<double>(num));}return solve(l);}bool solve(vector<double> &l) {if (l.size() == 0) {return false;}if (l.size() == 1) {return fabs(l[0] - TARGET) < EPSILON;}int size = l.size();for (int i = 0; i < size; i++) {for (int j = 0; j < size; j++) {if (i != j) {vector<double> list2 = vector<double>();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;}
};

http://www.lryc.cn/news/385877.html

相关文章:

  • 网络爬虫的原理
  • 游戏AI的创造思路-技术基础-机器学习(2)
  • 【深度学习】记录为什么没有调用GPU
  • vite 创建vue3项目 集成 ESLint、Prettier、Sass等
  • 计算机系统基础知识(上)
  • [深度学习]循环神经网络RNN
  • 【C++:list】
  • 解锁 Apple M1/M2 上的深度学习力量:安装 TensorFlow 完全指南
  • Apache Iceberg:现代数据湖存储格式的未来
  • 【离散数学·图论】(复习)
  • 【ONLYOFFICE震撼8.1】ONLYOFFICE8.1版本桌面编辑器测评
  • Shell 脚本编程保姆级教程(上)
  • 凸优化相关文章汇总
  • Java鲜花下单预约系统源码小程序源码
  • 网络变压器和RJ45接线的方法
  • Matlab/simulink三段式电流保护
  • OOXML入门学习
  • k8s集群node节点加入失败
  • layui+jsp项目中实现table单元格嵌入下拉选择框功能,下拉选择框可手动输入内容或选择默认值,修改后数据正常回显。
  • 2024年客户体验的几个预测
  • 【C++】动态内存管理new和delete
  • Java面向对象特性
  • odoo17 tree视图添加按钮
  • PreparedStatement 与Statement 的区别,以及为什么推荐使用 PreparedStatement ?
  • wsl ubuntu 安装Anaconda3步骤
  • Vue3响应式 ref全家桶
  • Mac(M1芯片)安装多个jdk,Mac卸载jdk
  • Warning message:package ‘ggplot2’ is not available (for R version 3.2.3)
  • Spring Boot 过滤器和拦截器详解
  • Eureka介绍与使用