mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
47 lines
2.0 KiB
HTML
47 lines
2.0 KiB
HTML
<p>给你一个整数数组 <code>piles</code> ,数组 <strong>下标从 0 开始</strong> ,其中 <code>piles[i]</code> 表示第 <code>i</code> 堆石子中的石子数量。另给你一个整数 <code>k</code> ,请你执行下述操作 <strong>恰好</strong> <code>k</code> 次:</p>
|
||
|
||
<ul>
|
||
<li>选出任一石子堆 <code>piles[i]</code> ,并从中 <strong>移除</strong> <code>floor(piles[i] / 2)</code> 颗石子。</li>
|
||
</ul>
|
||
|
||
<p><strong>注意:</strong>你可以对 <strong>同一堆</strong> 石子多次执行此操作。</p>
|
||
|
||
<p>返回执行 <code>k</code> 次操作后,剩下石子的 <strong>最小</strong> 总数。</p>
|
||
|
||
<p><code>floor(x)</code> 为 <strong>小于</strong> 或 <strong>等于</strong> <code>x</code> 的 <strong>最大</strong> 整数。(即,对 <code>x</code> 向下取整)。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>示例 1:</strong></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong>piles = [5,4,9], k = 2
|
||
<strong>输出:</strong>12
|
||
<strong>解释:</strong>可能的执行情景如下:
|
||
- 对第 2 堆石子执行移除操作,石子分布情况变成 [5,4,<strong><em>5</em></strong>] 。
|
||
- 对第 0 堆石子执行移除操作,石子分布情况变成 [<strong><em>3</em></strong>,4,5] 。
|
||
剩下石子的总数为 12 。
|
||
</pre>
|
||
|
||
<p><strong>示例 2:</strong></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong>piles = [4,3,6,7], k = 3
|
||
<strong>输出:</strong>12
|
||
<strong>解释:</strong>可能的执行情景如下:
|
||
- 对第 2 堆石子执行移除操作,石子分布情况变成 [4,3,<strong><em>3</em></strong>,7] 。
|
||
- 对第 3 堆石子执行移除操作,石子分布情况变成 [4,3,3,<strong><em>4</em></strong>] 。
|
||
- 对第 0 堆石子执行移除操作,石子分布情况变成 [<strong><em>2</em></strong>,3,3,4] 。
|
||
剩下石子的总数为 12 。
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= piles.length <= 10<sup>5</sup></code></li>
|
||
<li><code>1 <= piles[i] <= 10<sup>4</sup></code></li>
|
||
<li><code>1 <= k <= 10<sup>5</sup></code></li>
|
||
</ul>
|