力扣911.在线选举

力扣911.在线选举

  • 类似1818. 将每个时刻的候选人存储 在时间段上做二分

cpp 复制代码
  class TopVotedCandidate {
      vector<int> time,person;
  public:
      TopVotedCandidate(vector<int>& persons, vector<int>& times) {
              int n = persons.size();
              unordered_map<int,int> cnt;
              int ms = 0,mi = 0;
              time = times;
  
              for(int i=0;i<n;i++)
              {
                  if(++cnt[persons[i]] >= ms)
                  {
                      ms = cnt[persons[i]];
                      mi = persons[i];
                  }
                  person.push_back(mi);
              }
      }
      
      int q(int t) {
          int idx = ranges::upper_bound(time,t) - time.begin() - 1;
          return person[idx];
      }
  };
相关推荐
天真小巫5 分钟前
2026.5.17总结
职场和发展
凯瑟琳.奥古斯特6 分钟前
信号分类与特性解析
java·开发语言·职场和发展
y = xⁿ9 分钟前
20天速通LeetCodeday17:一维动态规划
算法
sheeta199810 分钟前
LeetCode 每日一题笔记 日期:2026.05.17 题目:1306. 跳跃游戏 III
笔记·leetcode
bnmoel14 分钟前
数据结构深度剖析栈与队列:结构、边界实现与进出操作全解析
c语言·数据结构·算法··队列
WL_Aurora15 分钟前
Python 算法基础篇之查找算法(一):顺序查找、二分查找与插值查找
开发语言·python·算法
ChoSeitaku25 分钟前
06_可变参数_递归_类和对象_封装
java·数据结构·算法
-To be number.wan30 分钟前
算法日记 | 动态规划(初级)
算法·动态规划
_深海凉_31 分钟前
LeetCode热题100-二叉搜索树中第 K 小的元素
算法·leetcode·职场和发展
图码31 分钟前
文本两端对齐算法详解:从LeetCode到实际应用
数据结构·图像处理·算法·leetcode·生成对抗网络·面试·职场和发展