1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-02-05 07:00:25 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/第 K 近障碍物查询 [k-th-nearest-obstacle-queries].html

64 lines
2.8 KiB
HTML
Raw Normal View History

2024-09-19 09:27:23 +08:00
<p>有一个无限大的二维平面。</p>
<p>给你一个正整数&nbsp;<code>k</code>&nbsp;,同时给你一个二维数组&nbsp;<code>queries</code>&nbsp;,包含一系列查询:</p>
<ul>
<li><code>queries[i] = [x, y]</code>&nbsp;:在平面上坐标&nbsp;<code>(x, y)</code>&nbsp;处建一个障碍物,数据保证之前的查询 <strong>不会</strong> 在这个坐标处建立任何障碍物。</li>
</ul>
<p>每次查询后,你需要找到离原点第 <code>k</code>&nbsp;<strong></strong>&nbsp;障碍物到原点的 <strong>距离</strong>&nbsp;</p>
<p>请你返回一个整数数组&nbsp;<code>results</code>&nbsp;,其中&nbsp;<code>results[i]</code>&nbsp;表示建立第 <code>i</code>&nbsp;个障碍物以后,离原地第 <code>k</code>&nbsp;近障碍物距离原点的距离。如果少于 <code>k</code>&nbsp;个障碍物,<code>results[i] == -1</code>&nbsp;</p>
<p><strong>注意</strong>,一开始&nbsp;<strong>没有</strong>&nbsp;任何障碍物。</p>
<p>坐标在&nbsp;<code>(x, y)</code>&nbsp;处的点距离原点的距离定义为&nbsp;<code>|x| + |y|</code>&nbsp;</p>
<p>&nbsp;</p>
<p><strong class="example">示例 1</strong></p>
<div class="example-block">
<p><span class="example-io"><b>输入:</b>queries = [[1,2],[3,4],[2,3],[-3,0]], k = 2</span></p>
<p><span class="example-io"><b>输出:</b>[-1,7,5,3]</span></p>
<p><strong>解释:</strong></p>
<p>最初,不存在障碍物。</p>
<ul>
<li><code>queries[0]</code>&nbsp;之后,少于 2 个障碍物。</li>
<li><code>queries[1]</code>&nbsp;之后,&nbsp;两个障碍物距离原点的距离分别为 3 和 7 。</li>
<li><code>queries[2]</code>&nbsp;之后,障碍物距离原点的距离分别为 3 5 和 7 。</li>
<li><code>queries[3]</code>&nbsp;之后,障碍物距离原点的距离分别为 335 和 7 。</li>
</ul>
</div>
<p><strong class="example">示例 2</strong></p>
<div class="example-block">
<p><span class="example-io"><b>输入:</b>queries = [[5,5],[4,4],[3,3]], k = 1</span></p>
<p><span class="example-io"><b>输出:</b>[10,8,6]</span></p>
<p><b>解释:</b></p>
<ul>
<li><code>queries[0]</code>&nbsp;之后,只有一个障碍物,距离原点距离为 10 。</li>
<li><code>queries[1]</code>&nbsp;之后,障碍物距离原点距离分别为 8 和 10 。</li>
<li><code>queries[2]</code>&nbsp;之后,障碍物距离原点的距离分别为 6 8 和10 。</li>
</ul>
</div>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= queries.length &lt;= 2 * 10<sup>5</sup></code></li>
<li>所有&nbsp;<code>queries[i]</code>&nbsp;互不相同。</li>
<li><code>-10<sup>9</sup> &lt;= queries[i][0], queries[i][1] &lt;= 10<sup>9</sup></code></li>
<li><code>1 &lt;= k &lt;= 10<sup>5</sup></code></li>
</ul>