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

leetcode 2126. 摧毁小行星 中等

给你一个整数mass,它表示一颗行星的初始质量。再给你一个整数数组asteroids,其中asteroids[i]是第i颗小行星的质量。

你可以按任意顺序重新安排小行星的顺序,然后让行星跟它们发生碰撞。如果行星碰撞时的质量大于等于小行星的质量,那么小行星被摧毁,并且行星会获得这颗小行星的质量。否则,行星将被摧毁。

如果所有小行星能被摧毁,请返回true,否则返回false

示例 1:

输入:mass = 10, asteroids = [3,9,19,5,21]输出:true解释:一种安排小行星的方式为 [9,19,5,3,21] : - 行星与质量为 9 的小行星碰撞。新的行星质量为:10 + 9 = 19 - 行星与质量为 19 的小行星碰撞。新的行星质量为:19 + 19 = 38 - 行星与质量为 5 的小行星碰撞。新的行星质量为:38 + 5 = 43 - 行星与质量为 3 的小行星碰撞。新的行星质量为:43 + 3 = 46 - 行星与质量为 21 的小行星碰撞。新的行星质量为:46 + 21 = 67 所有小行星都被摧毁。

示例 2:

输入:mass = 5, asteroids = [4,9,23,4]输出:false解释:行星无论如何没法获得足够质量去摧毁质量为 23 的小行星。 行星把别的小行星摧毁后,质量为 5 + 4 + 9 + 4 = 22 。 它比 23 小,所以无法摧毁最后一颗小行星。

提示:

  • 1 <= mass <= 10^5
  • 1 <= asteroids.length <= 10^5
  • 1 <= asteroids[i] <= 10^5

分析:先将小行星按照质量从小到大排序,记录最大的小行星质量。接着依次碰撞并更新行星质量,如果某个小行星的质量大于了当前的行星质量,说明这颗小行星无法被摧毁,返回 false;如果行星质量大于小行星的最大质量,说明所有小行星都可以被摧毁,返回 true。

class Solution { public: bool asteroidsDestroyed(int mass, vector<int>& asteroids) { int n=asteroids.size(),maxn=-1; sort(asteroids.begin(),asteroids.end());maxn=asteroids[n-1]; for(int i=0;i<n;++i) { if(mass>=asteroids[i])mass+=asteroids[i]; else return false; if(mass>=maxn)return true; } return true; } };
http://www.gsyq.cn/news/1440377.html

相关文章:

  • 从入门到精通:微软Lens模型完整安装与配置教程
  • 坡头区26年最新奢侈品名包名表专业回收权威店铺推荐 - 莘州文化
  • 2026淋雨试验箱品牌推荐:靠谱品牌筑牢防水测试合规防线 - 资讯速览
  • SY_AICC/gpt2-conversational-retrain模型参数调优指南:温度、top_p、top_k等超参数详解
  • 保姆级教程:在Ubuntu 20.04上搞定《视觉SLAM十四讲》第二版所有依赖库(Eigen、Pangolin、Ceres、g2o)
  • 智能数据提取与永久保存:WeChatMsg开源工具为个人数据管理提供自动化处理解决方案
  • 别再让高刷屏拖累你的游戏!Unity Android帧率适配全攻略:从Surface API到Display Mode
  • Arduino音乐互动小屋:从传感器到执行器的嵌入式系统实战
  • OpCore Simplify:零基础5步搞定黑苹果配置的终极自动化工具
  • 如何永久保存微信聊天记录?三步导出完整历史与智能分析指南
  • 智能电视媒体中心搭建:Jellyfin大屏体验深度解析
  • 基于双核架构的心率感知物联网玩具:从传感器到云端的情感化硬件实践
  • GetQzonehistory:专业级QQ空间数据备份解决方案
  • 如何高效批量获取抖音无水印内容:开源下载工具完全指南
  • AI生态竞争:从模型军备竞赛到开发者生态构建的范式转移
  • 基于树莓派与MediaPipe的手势控制智能镜子DIY全攻略
  • 如何通过3个简单步骤将你的智能电视变成家庭影院中心?
  • XaaS容器:高性能计算中的性能可移植性解决方案
  • foobox:如何将foobar2000打造成专业级音乐管理平台
  • ncmdumpGUI深度解析:突破性Windows音频格式转换实战指南
  • 终极指南:如何在Zotero内部一站式管理所有插件
  • GLM-5.1蒸馏技术如何赋能Qwen3.5?Qwen3.5-9B-GLM5.1-Distill-v1-GGUF背后的原理详解
  • 保姆级教程:用tippecanoe+Mapbox GL JS把OSM数据变成可交互地图(附完整代码)
  • 从手机充电到无人机供电:拆解Buck/Boost电路电感电容选型背后的工程权衡
  • QMCDecode终极指南:在macOS上快速解锁QQ音乐加密文件的完整方案
  • 微信聊天记录永久保存的终极指南:从数据备份到智能分析的完整方案
  • 如何永久保存微信聊天记录?3步完成完整免费备份指南
  • HsMod:炉石传说游戏体验终极优化插件,轻松实现50+项功能定制
  • roberta-large-sst2模型量化与压缩:减少70%存储空间的实战方法
  • MOSS-TTS-v1.5中文语音合成实战:高质量普通话与粤语生成