力扣1353.最多可以参加的会议数目

力扣1353.最多可以参加的会议数目

  • 优先队列

    • 枚举时间i在i时刻仍开展的会议中选结束时间最近的那个
    • 优先队列存每天进行的会议
cpp 复制代码
  class Solution {
  public:
      int maxEvents(vector<vector<int>>& events) {
          int maxDay = 0;
          unordered_map<int,vector<int>> day2days;
          for(vector<int>& event : events)
          {
              //取最大数
              if(maxDay < event[1])
                  maxDay = event[1];
              //将每天开始的会议存下来
              day2days[event[0]].push_back(event[1]);
          }
          int res=0;
          //小根堆
          priority_queue<int,vector<int>,greater<>> q;
          for(int i=1;i<=maxDay;i++)
          {
              //能找到第i天开始的会议
              if(day2days.find(i) != day2days.end())
                  //全部push
                  for(int day : day2days[i])
                      q.push(day);
              //已经结束的pop掉
              while(!q.empty() && q.top() < i)
                  q.pop();
              //取出结束时间最近的
              if(!q.empty())
              {
                  q.pop();
                  res ++;
              }
          }
          return res;
      }
  };
相关推荐
gihigo19988 小时前
MATLAB数值分析方程求解方法详解
算法·机器学习·matlab
程序员buddha11 小时前
C语言数组详解
c语言·开发语言·算法
蒙奇D索大13 小时前
【算法】递归算法的深度实践:从布尔运算到二叉树剪枝的DFS之旅
笔记·学习·算法·leetcode·深度优先·剪枝
卡提西亚13 小时前
C++笔记-25-函数模板
c++·笔记·算法
ghie909013 小时前
MATLAB/Simulink水箱水位控制系统实现
开发语言·算法·matlab
多多*14 小时前
分布式系统中的CAP理论和BASE理论
java·数据结构·算法·log4j·maven
yuan1999714 小时前
基于粒子群优化(PSO)算法的PID控制器参数整定
算法
小白程序员成长日记15 小时前
2025.11.10 力扣每日一题
数据结构·算法·leetcode
hoiii18715 小时前
基于交替方向乘子法(ADMM)的RPCA MATLAB实现
人工智能·算法·matlab
fengfuyao98515 小时前
MATLAB的加权K-means(Warp-KMeans)聚类算法
算法·matlab·kmeans