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)/找到连续赢 K 场比赛的第一位玩家 [find-the-first-player-to-win-k-games-in-a-row].html
2024-06-25 01:21:44 +08:00

71 lines
3.1 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>&nbsp;<code>n</code>&nbsp;位玩家在进行比赛,玩家编号依次为&nbsp;<code>0</code>&nbsp;&nbsp;<code>n - 1</code>&nbsp;</p>
<p>给你一个长度为 <code>n</code>&nbsp;的整数数组&nbsp;<code>skills</code>&nbsp;和一个 <strong></strong>&nbsp;整数&nbsp;<code>k</code>&nbsp;,其中&nbsp;<code>skills[i]</code>&nbsp;是第 <code>i</code>&nbsp;位玩家的技能等级。<code>skills</code>&nbsp;中所有整数 <strong>互不相同</strong>&nbsp;</p>
<p>所有玩家从编号 <code>0</code>&nbsp;<code>n - 1</code>&nbsp;排成一列。</p>
<p>比赛进行方式如下:</p>
<ul>
<li>队列中最前面两名玩家进行一场比赛,技能等级 <strong>更高</strong>&nbsp;的玩家胜出。</li>
<li>比赛后,获胜者保持在队列的开头,而失败者排到队列的末尾。</li>
</ul>
<p>这个比赛的赢家是 <strong>第一位连续</strong>&nbsp;赢下&nbsp;<code>k</code>&nbsp;场比赛的玩家。</p>
<p>请你返回这个比赛的赢家编号。</p>
<p>&nbsp;</p>
<p><strong class="example">示例 1</strong></p>
<div class="example-block">
<p><span class="example-io"><b>输入:</b>skills = [4,2,6,3,9], k = 2</span></p>
<p><b>输出:</b>2</p>
<p><strong>解释:</strong></p>
<p>一开始,队列里的玩家为&nbsp;<code>[0,1,2,3,4]</code>&nbsp;。比赛过程如下:</p>
<ul>
<li>玩家 0 和 1 进行一场比赛,玩家 0 的技能等级高于玩家 1 ,玩家 0 胜出,队列变为&nbsp;<code>[0,2,3,4,1]</code>&nbsp;</li>
<li>玩家 0 和 2 进行一场比赛,玩家 2 的技能等级高于玩家 0 ,玩家 2 胜出,队列变为&nbsp;<code>[2,3,4,1,0]</code>&nbsp;</li>
<li>玩家 2 和 3 进行一场比赛,玩家 2 的技能等级高于玩家 3 ,玩家 2 胜出,队列变为&nbsp;<code>[2,4,1,0,3]</code>&nbsp;</li>
</ul>
<p>玩家 2 连续赢了&nbsp;<code>k = 2</code>&nbsp;场比赛,所以赢家是玩家 2 。</p>
</div>
<p><strong class="example">示例 2</strong></p>
<div class="example-block">
<p><span class="example-io"><b>输入:</b>skills = [2,5,4], k = 3</span></p>
<p><b>输出:</b>1</p>
<p><strong>解释:</strong></p>
<p>一开始,队列里的玩家为&nbsp;<code>[0,1,2]</code>&nbsp;。比赛过程如下:</p>
<ul>
<li>玩家 0 和 1 进行一场比赛,玩家 1 的技能等级高于玩家 0 ,玩家 1 胜出,队列变为&nbsp;<code>[1,2,0]</code>&nbsp;</li>
<li>玩家 1&nbsp;和 2&nbsp;进行一场比赛,玩家 1 的技能等级高于玩家 2&nbsp;,玩家 1 胜出,队列变为&nbsp;<code>[1,0,2]</code>&nbsp;</li>
<li>玩家 1&nbsp;和 0&nbsp;进行一场比赛,玩家 1 的技能等级高于玩家 0&nbsp;,玩家 1 胜出,队列变为&nbsp;<code>[1,2,0]</code>&nbsp;</li>
</ul>
<p>玩家 1 连续赢了&nbsp;<code>k = 3</code>&nbsp;场比赛,所以赢家是玩家 1 。</p>
</div>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>n == skills.length</code></li>
<li><code>2 &lt;= n &lt;= 10<sup>5</sup></code></li>
<li><code>1 &lt;= k &lt;= 10<sup>9</sup></code></li>
<li><code>1 &lt;= skills[i] &lt;= 10<sup>6</sup></code></li>
<li><code>skills</code>&nbsp;中的整数互不相同。</li>
</ul>