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

山东美建站企业查询系统官网河北

山东美建站,企业查询系统官网河北,德州市建设街小学官方网站,海外营销推广服务题目链接:https://leetcode.cn/problems/the-number-of-the-smallest-unoccupied-chair/ 题目大意:给出一群人到达一个排队的时间和离开派对的时间[arr, lev]。有无数个座位,下标从0开始。当一个人在tm时刻离开时,如果一个人在tm…

题目链接:https://leetcode.cn/problems/the-number-of-the-smallest-unoccupied-chair/

题目大意:给出一群人到达一个排队的时间和离开派对的时间[arr, lev]。有无数个座位,下标从0开始。当一个人在tm时刻离开时,如果一个人在tm及其以后的时刻到达,那么他可以坐离开的人的座位。每个人会优先挑选下标最小的座位。给出一个targetFriend,求这个人坐到的座位号。【题目保证每个人到达的时间是不同的】

思路:首先,对于每个人的处理肯定是按照到达时间的先后顺序,我们要考虑的那个人的时间假设为arr_i,那么实际上arr_i之后到达的人就根本没必要去考虑了。因此,先把arr_i以及之前到达的人找出来,再按照时间顺序排序。

        vector<pair<int, int>> st;int tArr = times[targetFriend][0];for (auto tm : times) {if (tm[0] <= tArr)st.push_back(make_pair(tm[0], tm[1]));}

随后,对这群需要处理的人遍历即可。(在这个st里,重新给人编号了,我们要找座位的人就是st的最后一个人)对于每一个人,因为要求座位号最小,因此我们从0座位开始遍历,如果这个地方位置被占了,那么看看当前时间(st[i]到达的时间)这个位置上的人是否离开了,如果离开,那么OK就用这个位置。如果这个地方位置没被占,那也OK就用这个位置。

其中occ[]记录该位置上坐的上一个人,如果是-1表示还没有被坐过。

        for (int i = 0; i < st.size(); i++) {int pos = 0;int now = st[i].first;while (occ[pos] != -1) {if (now >= st[occ[pos]].second) {break;}pos++;}occ[pos] = i;if (i == st.size()-1)ret = pos;}

记录最后一个人(我们的目标)坐的座位,返回即可。

完整代码:

bool cmp(pair<int, int> x, pair<int, int> y) {return x.first < y.first;
}class Solution {
public:int smallestChair(vector<vector<int>>& times, int targetFriend) {vector<pair<int, int>> st;int tArr = times[targetFriend][0];for (auto tm : times) {if (tm[0] <= tArr)st.push_back(make_pair(tm[0], tm[1]));}int occ[100001];memset(occ, -1, sizeof(occ));sort(st.begin(), st.end(), cmp);int ret = -1;for (int i = 0; i < st.size(); i++) {int pos = 0;int now = st[i].first;while (occ[pos] != -1) {if (now >= st[occ[pos]].second) {break;}pos++;}occ[pos] = i;if (i == st.size()-1)ret = pos;}return ret;}
};
http://www.yayakq.cn/news/565746/

相关文章:

  • 织梦cms电影网站源码东莞人才网站
  • 网站建设后怎么赚钱嘉兴提高网站排名
  • 网站播放mp3代码网站图标怎么换
  • 网站怎样建设做网站租服务器多少钱
  • 无为县住房建设局网站首页oa系统包括哪些系统
  • 湛江市研发网站建设百度如何把网站做链接
  • 网站建设工作汇报网络安全技术
  • 桂林做网站公司有哪些数据标签wordpress
  • 做网站需要做需求分析吗企业制作小程序
  • 企业建设网站目的轻松筹 的网站价格做
  • 专门做五金的网站查询网138网站域名
  • 青岛网站搭建公司哪家好ftp 打开wordpress
  • 修改网站dns做交互式的网站怎么做
  • 宣城地宝网站开发云服务器 可以做网站吗
  • 建设银行网站官方网站电子商务网站开发的历程
  • 我想学制作网站自媒体平台怎么赚钱
  • 网站开发总监佛山短视频拍摄
  • 国外免费做网站软件重庆市建设工程信息网安全监督安管人员查询
  • 如何用xampp做网站比亚迪新能源汽车4s店
  • 网站空间免费申请重庆人社app
  • 做相亲网站犯法吗推广小程序拿佣金
  • 建设专题网站做商城网站
  • 专业微网站建设公司首选公司哪家好上饶做网站要多少钱
  • 阐述电子商务网站的建设要求景区旅游网站平台建设
  • 怎么在网站做直播间ps个人主页设计
  • 有什么网站做头像招应届培训网页设计
  • 还有哪些行业可以做垂直网站wordpress页面地图
  • 苏州集团网站建设辽宁省兴城做网站的
  • 商城网站wordpress烟台百度网站
  • POS机网站怎么做一个好的网站怎么建设