1、题目描述
给你一个会议时间安排的数组 intervals ,每个会议时间都会包括开始和结束的时间 intervals[i] = [starti, endi] ,为避免会议冲突,同时要考虑充分利用会议室资源,请你计算至少需要多少间会议室,才能满足这些会议安排。
提示:
1 <= intervals.length <= 104
0 <= starti < endi <= 106
2、示例
输入:intervals = [[0,30],[5,10],[15,20]]
输出:2
3、题解
class Solution {
public:
int minMeetingRooms(vector<vector<int>>& intervals) {
vector<pair<int,int>> meetings;
for(int i=0;i<intervals.size();i++)
{
meetings.push_back({intervals[i][0],1});
meetings.push_back({intervals[i][1],-1});
}
sort(meetings.begin(),meetings.end());
int cnt=0,res=0;
for(int i=0;i<meetings.size();i++)
{
cnt+=meetings[i].second;
res=max(res,cnt);
}
return res;
}
};