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

算法训练营第35天|LeetCode 860.柠檬水找零 406.根据身高重建队列 452.用最少数量的箭引爆气球

LeetCode 860.柠檬水找零

题目链接:

LeetCode 860.柠檬水找零

解题思路:

枚举法,写出所有找零的情况。

代码:

class Solution {
public:bool lemonadeChange(vector<int>& bills) {if(bills[0]!=5) return false;unordered_map<int,int>map_count={{5,0},{10,0},{20,0}};map_count[bills[0]]++;for(int i=1;i<bills.size();i++){if(bills[i]==5){map_count[bills[i]]++;}else if(bills[i]==10){if(map_count[5]>0){map_count[5]--;map_count[10]++;}else{return false;break;}}else{if(map_count[10]>0&&map_count[5]>0){map_count[10]--;map_count[5]--;}else if(map_count[5]>=3){map_count[5]-=3;}else{return false;break;}}}return true;}
};

LeetCode 406.根据身高重建队列

题目链接:

LeetCode 406.根据身高重建队列

解题思路:

先按第一位从大到小排序,之后根据第二位决定插入位置。

代码:

class Solution {
public:static bool cmp(vector<int>a,vector<int>b){if(a[0]==b[0]) return a[1]<b[1];return a[0]>b[0];}vector<vector<int>> reconstructQueue(vector<vector<int>>& people) {sort(people.begin(),people.end(),cmp);vector<vector<int>>que;for(int i=0;i<people.size();i++){int Index = people[i][1];que.insert(que.begin()+Index,people[i]);}return que;}
};

LeetCode 452.用最少数量的箭引爆气球 

题目链接:

LeetCode 452.用最少数量的箭引爆气球 

解题思路:

先按照左边边界进行排序,之后更新右边边界来判断使用箭数。

代码:

class Solution {
public:static bool cmp(vector<int>a,vector<int>b){if(a[0]==b[0]) return a[1]<b[1];return a[0]<b[0];}int findMinArrowShots(vector<vector<int>>& points) {sort(points.begin(),points.end(),cmp);int result = 1;for(int i = 1;i<points.size();i++){if(points[i][0]>points[i-1][1]){result++;}else{points[i][1] = min(points[i][1],points[i-1][1]);}}return result;}
};

相关文章:

  • Vue2 —— 学习(一)
  • JAVA POI Excel 使用数组公式 FREQUENCY
  • 2024.4.2力扣每日一题——所有可能的真二叉树
  • Word文档如何设置单选框、复选框、下拉框
  • python selenium向html中写入内容
  • Spring、SpringMVC、Springboot三者的区别和联系
  • 深入理解JVM后端优化技术-逃逸分析(Escape Analysis)
  • 【牛客SQL快速入门】SQL基础(一)
  • 蓝桥杯-网络安全比赛(5)基础学习-JavaScript原型链的prototype、constructor、object.create()、__proto__
  • go语言学习--2.函数
  • 为什么 MySQL 采用 B+ 树作为索引?
  • 网络协议——HTTP协议
  • ObjectiveC-10-OOP面向对象程序设计-分类/类别
  • 宁波中墙建材对于蒸压加气混凝土砌块2024年前景预测
  • go 搭建api后台笔记
  • python3.6+scrapy+mysql 爬虫实战
  • Debian下无root权限使用Python访问Oracle
  • django开发-定时任务的使用
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • Git同步原始仓库到Fork仓库中
  • Hibernate【inverse和cascade属性】知识要点
  • IDEA 插件开发入门教程
  • JavaScript 奇技淫巧
  • 对超线程几个不同角度的解释
  • 规范化安全开发 KOA 手脚架
  • 解析带emoji和链接的聊天系统消息
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 漂亮刷新控件-iOS
  • 普通函数和构造函数的区别
  • 前端面试之CSS3新特性
  • 前端知识点整理(待续)
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • 关于Android全面屏虚拟导航栏的适配总结
  • ​TypeScript都不会用,也敢说会前端?
  • # 飞书APP集成平台-数字化落地
  • # 深度解析 Socket 与 WebSocket:原理、区别与应用
  • $ git push -u origin master 推送到远程库出错
  • $(function(){})与(function($){....})(jQuery)的区别
  • (10)STL算法之搜索(二) 二分查找
  • (C语言)fread与fwrite详解
  • (env: Windows,mp,1.06.2308310; lib: 3.2.4) uniapp微信小程序
  • (poj1.2.1)1970(筛选法模拟)
  • (层次遍历)104. 二叉树的最大深度
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • .MSSQLSERVER 导入导出 命令集--堪称经典,值得借鉴!
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .NET业务框架的构建
  • /dev下添加设备节点的方法步骤(通过device_create)
  • ?.的用法
  • [ IOS ] iOS-控制器View的创建和生命周期
  • [23] GaussianAvatars: Photorealistic Head Avatars with Rigged 3D Gaussians