1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-11 02:58:13 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/在线选举 [online-election].html
2022-03-29 12:43:11 +08:00

47 lines
2.3 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<p>给你两个整数数组 <code>persons</code><code>times</code> 。在选举中,第&nbsp;<code>i</code>&nbsp;张票是在时刻为&nbsp;<code>times[i]</code>&nbsp;时投给候选人 <code>persons[i]</code>&nbsp;的。</p>
<p>对于发生在时刻 <code>t</code> 的每个查询,需要找出在&nbsp;<code>t</code> 时刻在选举中领先的候选人的编号。</p>
<p>&nbsp;<code>t</code> 时刻投出的选票也将被计入我们的查询之中。在平局的情况下,最近获得投票的候选人将会获胜。</p>
<p>实现 <code>TopVotedCandidate</code> 类:</p>
<ul>
<li><code>TopVotedCandidate(int[] persons, int[] times)</code> 使用&nbsp;<code>persons</code><code>times</code> 数组初始化对象。</li>
<li><code>int q(int t)</code> 根据前面描述的规则,返回在时刻 <code>t</code> 在选举中领先的候选人的编号。</li>
</ul>
&nbsp;
<p><strong>示例:</strong></p>
<pre>
<strong>输入:</strong>
["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]]
<strong>输出:</strong>
[null, 0, 1, 1, 0, 0, 1]
<strong>解释:</strong>
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
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= persons.length &lt;= 5000</code></li>
<li><code>times.length == persons.length</code></li>
<li><code>0 &lt;= persons[i] &lt; persons.length</code></li>
<li><code>0 &lt;= times[i] &lt;= 10<sup>9</sup></code></li>
<li><code>times</code> 是一个严格递增的有序数组</li>
<li><code>times[0] &lt;= t &lt;= 10<sup>9</sup></code></li>
<li>每个测试用例最多调用 <code>10<sup>4</sup></code><code>q</code></li>
</ul>