Leetcode-1094. 拼车
链接
1094. 拼车
题目
假设你是一位顺风车司机,车上最初有 capacity 个空座位可以用来载客。由于道路的限制,车 只能 向一个方向行驶(也就是说,不允许掉头或改变方向,你可以将其想象为一个向量)。
这儿有一份乘客行程计划表 trips[][],其中 trips[i] = [num_passengers, start_location, end_location] 包含了第 i 组乘客的行程信息:
必须接送的乘客数量;
乘客的上车地点;
以及乘客的下车地点。
这些给出的地点位置是从你的 初始 出发位置向前行驶到这些地点所需的距离(它们一定在你的行驶方向上)。请你根据给出的行程计划表和车子的座位数,来判断你的车是否可以顺利完成接送所有乘客的任务(当且仅当你可以在所有给定的行程中接送所有乘客时,返回 true,否则请返回 false)。
示例
示例 1:
输入:trips = [[2,1,5],[3,3,7]], capacity = 4
输出:false示例 2:
输入:trips = [[2,1,5],[3,3,7]], capacity = 5
输出:true示例 3:
输入:trips = [[2,1,5],[3,5,7]], capacity = 3
输出:true示例 4:
输入:trips = [[3,2,7],[3,7,9],[8,3,9]], capacity = 11
输出:true
提示
- 你可以假设乘客会自觉遵守 “先下后上” 的良好素质
- trips.length <= 1000
- trips[i].length == 3
- 1 <= trips[i][0] <= 100
- 0 <= trips[i][1] < trips[i][2] <= 1000
- 1 <= capacity <= 100000
思路
参考力扣精选评论
由于map容器本身有序, 我们可以把上车地点和上车乘客人数,以及下车地点和下车人数都存放map中, 然后遍历整个map,对数据进行累加,变可得到实时乘客人数。
C++ Code
class Solution {
public:bool carPooling(vector<vector<int>>& trips, int capacity) {map<int, int> m;for(auto & t: trips){m[t[1]] += t[0]; // 上车m[t[2]] -= t[0]; // 下车}int passengers = 0;for(auto it: m){passengers += it.second;//实时计算当前人数if(passengers > capacity) return false;}return true;}
};
此外,由于本题题目已经说了trips.length <= 1000,因此,可以直接定义一个大小为1001的数组存放每个路段上下车的人数,思路和上述代码一致。
class Solution {
public:bool carPooling(vector<vector<int>>& trips, int capacity) {vector<int> road(1001, 0);for(int i=0;i<trips.size();i++){road[trips[i][1]]+=trips[i][0];road[trips[i][2]]-=trips[i][0];}int count=0;for(int i=0;i<road.size();i++){count+=road[i];if(count>capacity) return false;}return true;}
};
Leetcode-1094. 拼车相关推荐
- LeetCode 1094. 拼车
文章目录 1. 题目 2. 解题 1. 题目 假设你是一位顺风车司机,车上最初有 capacity 个空座位可以用来载客.由于道路的限制,车 只能 向一个方向行驶(也就是说,不允许掉头或改变方向,你可 ...
- Leetcode 1094.拼车 差分
思路: 这道题有很多种解法,刚好最近在学差分,就用差分做吧.首先是初始没有乘客,差分diff数组各项为0,不用求差构造差分数组了.接着是每一次乘车方案,起点站需要加上乘客数,终点站需要减去乘客数.注意 ...
- 值得一刷系列,航班预订统计拼车
前言 前几天,有一哥们发我一个LeetCode题目链接,紧跟着附上了自己的提交记录,一个2ms,另一个1451ms- 我一看,这题有点意思啊,不同的思路竟然时间差这么多.搞它. 题目描述 这里有n个航 ...
- Python | 一万多条拼车数据,看春运的迁徙图
作者 | 白苏,医疗健康领域产品经理一枚,Python&R爱好者 来源 | InThirty 编辑 | Jane 今天是腊月二十八,你们都到家了吗?这篇文章,作者对北京.上海.广州.深圳.杭州 ...
- PonyAI的首份美国无人出租成绩单:总数1271趟,15%拼车
2019-12-05 09:46:50 鱼羊 发自 凹非寺 量子位 报道 | 公众号 QbitAI 小马智行在加州尔湾(Irvine)提供的自动驾驶出行服务,如今正式交出答卷. 其向加州公共事业委员会 ...
- 私家车合乘系统 matlab,私家车贴上邻里合乘标志 武汉探路拼车合法化
您现在的位置:首页>图片焦点图片焦点 私家车贴上"邻里合乘"标志 武汉探路拼车合法化 中广网北京11月21日消息 据中国之声<新闻纵横>7时45分报道,为缓解交通 ...
- 一个草根交通研究员的拼车产品分析
PMCAFF(www.pmcaff.com):互联网产品社区,是百度,腾讯,阿里等产品经理的学习交流平台.定期出品深度产品观察,互联产品研究首选. 外包大师(www.waibaodashi.com): ...
- 私家车合乘系统 matlab,适用于预约拼车的合乘人员沟通方法及其系统的制作方法...
适用于预约拼车的合乘人员沟通方法及其系统的制作方法 [技术领域] [0001]本发明涉及拼车技术领域,更具体地涉及一种适用于预约拼车的合乘人员沟通方法及其系统. [背景技术] [0002]随着车辆的急 ...
- mongodb添加多条数据_分析了一万多条拼车数据,看看北上广深的各位都回哪过年...
快过年了,很多同学都踏上了返乡的路.现在交通这么发达,除了高铁飞机外,还可以搭顺风车回家.今天的这篇文章我们就来分析一下拼车数据,看看今年大家都回哪儿过年. 分析了一万多条拼车数据,看看北上广深的各位 ...
最新文章
- Jquery 添听checkbox 是否选中
- STL 源代码剖析 算法 stl_algo.h -- equal_range
- 深入理解FFM原理与实践
- 修身论文2000字_软考论文怎么写
- adb实时获取屏幕_实时数仓 | 你需要的是一款合适且强大的OLAP数据库(上)
- java并发编程实践(1)intro
- Deep Image Homography Estimation
- mac下ssh免密登陆远程服务器(linux)
- easy~算法刷题第三天
- 现代软件工程——第一周博客作业
- js校验明细列表字段是否存在相同值(js循环嵌套初始值问题)
- PC端输入法双拼皮肤分享
- 前端检查本机注册表文件,如果有打开程序,如果没有下载程序/注册表文件
- 技术决胜年----谈谈我2018年的新观念新思想
- python安装后不能画图_Python实现画图软件功能,windows的画图功能不能实现
- 单片机 c语言 可控硅,单片机控制可控硅.doc
- C语言程序设计ncre,NCRE二级C语言程序设计辅导
- 小红书笔记无法展示是什么原因?让我们来看看吧
- MySQL子查询(嵌套查询)
- 谷歌索引量查询,批量查询网站在谷歌RR权重值
热门文章
- 一份SEO优化操作方案具体讲解
- 阿里合伙人彭翼捷:每个阶段都给自己找一个目标!
- 父亲儿子女儿放取水果进程/线程间通信程序设计与实现
- 计算机网络如何促进幼儿教师专业发展,新学期计算机网络实训报告范文与新幼儿教师的述职报告合集.doc...
- dc元数据和html描述资源,在HTML中使用DC元数据
- MySQL Windows安装教程
- 韩钰带你一起走进电商世界之淘宝店铺设计尺寸规范
- 微软SurfacePro8评测
- LaTex “too many unprocessed floats” 解决
- xcode4版本在哪里下载