911. 在線選舉 : 二分運用題

題目描述

這是 LeetCode 上的 「911. 在線選舉」 ,難度為 「中等」。

Tag : 「二分」

給你兩個整數數組 personstimes

在選舉中,第 i 張票是在時刻為 times[i] 時投給候選人 persons[i] 的。

對於發生在時刻 t 的每個查詢,需要找出在 t 時刻在選舉中領先的候選人的編號。

t 時刻投出的選票也將被計入我們的查詢之中。在平局的情況下,最近獲得投票的候選人將會獲勝。

實現 TopVotedCandidate 類:

  • TopVotedCandidate(int[] persons, int[] times) 使用 personstimes 數組初始化對象。
  • int q(int t) 根據前面描述的規則,返回在時刻 t 在選舉中領先的候選人的編號。

示例:

輸入:
["TopVotedCandidate", "q", "q", "q", "q", "q", "q"]
[[[0, 1, 1, 0, 0, 1, 0], [0, 5, 10, 15, 20, 25, 30]], [3], [12], [25], [15], [24], [8]]

輸出:
[null, 0, 1, 1, 0, 0, 1]

解釋:
TopVotedCandidate topVotedCandidate = new TopVotedCandidate([0, 1, 1, 0, 0, 1, 0], [0, 5, 10, 15, 20, 25, 30]);
topVotedCandidate.q(3); // 返回 0 ,在時刻 3 ,票數分佈為 [0] ,編號為 0 的候選人領先。
topVotedCandidate.q(12); // 返回 1 ,在時刻 12 ,票數分佈為 [0,1,1] ,編號為 1 的候選人領先。
topVotedCandidate.q(25); // 返回 1 ,在時刻 25 ,票數分佈為 [0,1,1,0,0,1] ,編號為 1 的候選人領先。(在平局的情況下,1 是最近獲得投票的候選人)。
topVotedCandidate.q(15); // 返回 0
topVotedCandidate.q(24); // 返回 0
topVotedCandidate.q(8); // 返回 1

发表回复

相关推荐

数学学习方法(4)如何做“数学题”?

▲ 图片来源:视觉中国 本周我们的主题是:数学学习方法,今天是第四讲。 让孩子成为自己、爱上学习、提高分数,你好,这里 ...

· 10秒前

中国残疾人实用评定标准

人体残疾 视力残疾标准    一、 视力残疾的定义     视力残疾,是指由于各种原因导致双眼视力障碍或视野缩小,而难能做 ...

· 21秒前

河小象 · 小学生书法 | 八字头和八字底

今天我来分享“八字头和八字底”的书写技巧。

· 1分钟前

古之白马县,即今河南滑县东旧滑县城

今广西南宁市郊区,邕宁、武鸣、上林、马山、宾阳、横县、宜州、环江、河池,云南省文山、广南、马关等县、自治县、市的覃氏 ...

· 1分钟前

宁波3日游攻略

宁波三日游怎么安排好?旅游小编为您推荐这宁波三日游路线攻略,人均花费800元左右,其中推荐D1:梁祝文化公园+南塘老街+天 ...

· 2分钟前

Copyright 2015-2025 www.icpchaxun.com ©All Rights Reserved.