力扣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];
      }
  };
相关推荐
-To be number.wan几秒前
算法学习日记 |贪心算法
c++·学习·算法·贪心算法
清钟沁桐13 分钟前
算法实现
算法
梦游钓鱼15 分钟前
c++中一维数组和二维数组的应用
数据结构·c++·算法
铁甲前沿16 分钟前
基于最小二乘拟合减小四轮定位数据采集误差的方法
算法
程序员酥皮蛋28 分钟前
hot 100 第二十六题 26.环形链表 II
算法
啊阿狸不会拉杆1 小时前
《机器学习导论》第 16 章-贝叶斯估计
人工智能·python·算法·机器学习·ai·参数估计·贝叶斯估计
ArturiaZ1 小时前
【day27】
算法
望舒5132 小时前
代码随想录day32,动态规划part1
java·算法·leetcode·动态规划
楠秋9202 小时前
代码随想录算法训练营第三十二天| 509. 斐波那契数 、 70. 爬楼梯 、746. 使用最小花费爬楼梯
数据结构·算法·leetcode·动态规划
㓗冽2 小时前
最大效益(二维数组)-基础题76th + 螺旋方阵(二维数组)-基础题77th + 方块转换(二维数组)-基础题78th
数据结构·算法