mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
56 lines
2.5 KiB
HTML
56 lines
2.5 KiB
HTML
<p>给你一个下标从 <strong>0</strong> 开始长度为 <code>n</code> 的整数数组 <code>stations</code> ,其中 <code>stations[i]</code> 表示第 <code>i</code> 座城市的供电站数目。</p>
|
||
|
||
<p>每个供电站可以在一定 <strong>范围</strong> 内给所有城市提供电力。换句话说,如果给定的范围是 <code>r</code> ,在城市 <code>i</code> 处的供电站可以给所有满足 <code>|i - j| <= r</code> 且 <code>0 <= i, j <= n - 1</code> 的城市 <code>j</code> 供电。</p>
|
||
|
||
<ul>
|
||
<li><code>|x|</code> 表示 <code>x</code> 的 <strong>绝对值</strong> 。比方说,<code>|7 - 5| = 2</code> ,<code>|3 - 10| = 7</code> 。</li>
|
||
</ul>
|
||
|
||
<p>一座城市的 <strong>电量</strong> 是所有能给它供电的供电站数目。</p>
|
||
|
||
<p>政府批准了可以额外建造 <code>k</code> 座供电站,你需要决定这些供电站分别应该建在哪里,这些供电站与已经存在的供电站有相同的供电范围。</p>
|
||
|
||
<p>给你两个整数 <code>r</code> 和 <code>k</code> ,如果以最优策略建造额外的发电站,返回所有城市中,最小电量的最大值是多少。</p>
|
||
|
||
<p>这 <code>k</code> 座供电站可以建在多个城市。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>示例 1:</strong></p>
|
||
|
||
<pre>
|
||
<b>输入:</b>stations = [1,2,4,5,0], r = 1, k = 2
|
||
<b>输出:</b>5
|
||
<b>解释:</b>
|
||
最优方案之一是把 2 座供电站都建在城市 1 。
|
||
每座城市的供电站数目分别为 [1,4,4,5,0] 。
|
||
- 城市 0 的供电站数目为 1 + 4 = 5 。
|
||
- 城市 1 的供电站数目为 1 + 4 + 4 = 9 。
|
||
- 城市 2 的供电站数目为 4 + 4 + 5 = 13 。
|
||
- 城市 3 的供电站数目为 5 + 4 = 9 。
|
||
- 城市 4 的供电站数目为 5 + 0 = 5 。
|
||
供电站数目最少是 5 。
|
||
无法得到更优解,所以我们返回 5 。
|
||
</pre>
|
||
|
||
<p><strong>示例 2:</strong></p>
|
||
|
||
<pre>
|
||
<b>输入:</b>stations = [4,4,4,4], r = 0, k = 3
|
||
<b>输出:</b>4
|
||
<b>解释:</b>
|
||
无论如何安排,总有一座城市的供电站数目是 4 ,所以最优解是 4 。
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>n == stations.length</code></li>
|
||
<li><code>1 <= n <= 10<sup>5</sup></code></li>
|
||
<li><code>0 <= stations[i] <= 10<sup>5</sup></code></li>
|
||
<li><code>0 <= r <= n - 1</code></li>
|
||
<li><code>0 <= k <= 10<sup>9</sup></code></li>
|
||
</ul>
|