mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-25 17:50:26 +08:00
57 lines
3.4 KiB
HTML
57 lines
3.4 KiB
HTML
<p>有一条无限长的数轴,原点在 0 处,沿着 x 轴 <strong>正</strong> 方向无限延伸。</p>
|
||
|
||
<p>给你一个二维数组 <code>queries</code> ,它包含两种操作:</p>
|
||
|
||
<ol>
|
||
<li>操作类型 1 :<code>queries[i] = [1, x]</code> 。在距离原点 <code>x</code> 处建一个障碍物。数据保证当操作执行的时候,位置 <code>x</code> 处 <strong>没有</strong> 任何障碍物。</li>
|
||
<li>操作类型 2 :<code>queries[i] = [2, x, sz]</code> 。判断在数轴范围 <code>[0, x]</code> 内是否可以放置一个长度为 <code>sz</code> 的物块,这个物块需要 <strong>完全</strong> 放置在范围 <code>[0, x]</code> 内。如果物块与任何障碍物有重合,那么这个物块 <strong>不能</strong> 被放置,但物块可以与障碍物刚好接触。注意,你只是进行查询,并 <strong>不是</strong> 真的放置这个物块。每个查询都是相互独立的。</li>
|
||
</ol>
|
||
|
||
<p>请你返回一个 boolean 数组<code>results</code> ,如果第 <code>i</code> 个操作类型 2 的操作你可以放置物块,那么 <code>results[i]</code> 为 <code>true</code> ,否则为 <code>false</code> 。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong class="example">示例 1:</strong></p>
|
||
|
||
<div class="example-block">
|
||
<p><span class="example-io"><b>输入:</b>queries = [[1,2],[2,3,3],[2,3,1],[2,2,2]]</span></p>
|
||
|
||
<p><span class="example-io"><b>输出:</b>[false,true,true]</span></p>
|
||
|
||
<p><strong>解释:</strong></p>
|
||
|
||
<p><strong><img alt="" src="https://assets.leetcode.com/uploads/2024/04/22/example0block.png" style="padding: 10px; background: rgb(255, 255, 255); border-radius: 0.5rem; width: 309px; height: 129px;" /></strong></p>
|
||
|
||
<p>查询 0 ,在 <code>x = 2</code> 处放置一个障碍物。在 <code>x = 3</code> 之前任何大小不超过 2 的物块都可以被放置。</p>
|
||
</div>
|
||
|
||
<p><strong class="example">示例 2:</strong></p>
|
||
|
||
<div class="example-block">
|
||
<p><span class="example-io"><b>输入:</b>queries = </span>[[1,7],[2,7,6],[1,2],[2,7,5],[2,7,6]]<!-- notionvc: 4a471445-5af1-4d72-b11b-94d351a2c8e9 --></p>
|
||
|
||
<p><b>输出:</b>[true,true,false]</p>
|
||
|
||
<p><strong>解释:</strong></p>
|
||
|
||
<p><strong><img alt="" src="https://assets.leetcode.com/uploads/2024/04/22/example1block.png" style="padding: 10px; background: rgb(255, 255, 255); border-radius: 0.5rem; width: 310px; height: 130px;" /></strong></p>
|
||
|
||
<ul>
|
||
<li>查询 0 在 <code>x = 7</code> 处放置一个障碍物。在 <code>x = 7</code> 之前任何大小不超过 7 的物块都可以被放置。</li>
|
||
<li>查询 2 在 <code>x = 2</code> 处放置一个障碍物。现在,在 <code>x = 7</code> 之前任何大小不超过 5 的物块可以被放置,<code>x = 2</code> 之前任何大小不超过 2 的物块可以被放置。</li>
|
||
</ul>
|
||
</div>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= queries.length <= 15 * 10<sup>4</sup></code></li>
|
||
<li><code>2 <= queries[i].length <= 3</code></li>
|
||
<li><code>1 <= queries[i][0] <= 2</code></li>
|
||
<li><code>1 <= x, sz <= min(5 * 10<sup>4</sup>, 3 * queries.length)</code></li>
|
||
<li>输入保证操作 1 中,<code>x</code> 处不会有障碍物。</li>
|
||
<li>输入保证至少有一个操作类型 2 。</li>
|
||
</ul>
|