mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-09-12 19:01:47 +08:00
81 lines
3.4 KiB
HTML
81 lines
3.4 KiB
HTML
<p>给你一个 <strong>下标从 1 开始的</strong> 整数数组 <code>prices</code> ,其中 <code>prices[i]</code> 表示你购买第 <code>i</code> 个水果需要花费的金币数目。</p>
|
||
|
||
<p>水果超市有如下促销活动:</p>
|
||
|
||
<ul>
|
||
<li>如果你花费 <code>prices[i]</code> 购买了下标为 <code>i</code> 的水果,那么你可以免费获得下标范围在 <code>[i + 1, i + i]</code> 的水果。</li>
|
||
</ul>
|
||
|
||
<p><strong>注意</strong> ,即使你 <strong>可以</strong> 免费获得水果 <code>j</code> ,你仍然可以花费 <code>prices[j]</code> 个金币去购买它以获得它的奖励。</p>
|
||
|
||
<p>请你返回获得所有水果所需要的 <strong>最少</strong> 金币数。</p>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong class="example">示例 1:</strong></p>
|
||
|
||
<div class="example-block">
|
||
<p><strong>输入:</strong><span class="example-io">prices = [3,1,2]</span></p>
|
||
|
||
<p><strong>输出:</strong><span class="example-io">4</span></p>
|
||
|
||
<p><strong>解释:</strong></p>
|
||
|
||
<ul>
|
||
<li>用 <code>prices[0] = 3</code> 个金币购买第 1 个水果,你可以免费获得第 2 个水果。</li>
|
||
<li>用 <code>prices[1] = 1</code> 个金币购买第 2 个水果,你可以免费获得第 3 个水果。</li>
|
||
<li>免费获得第 3 个水果。</li>
|
||
</ul>
|
||
|
||
<p>请注意,即使您可以免费获得第 2 个水果作为购买第 1 个水果的奖励,但您购买它是为了获得其奖励,这是更优化的。</p>
|
||
</div>
|
||
|
||
<p><strong class="example">示例 2:</strong></p>
|
||
|
||
<div class="example-block">
|
||
<p><strong>输入:</strong><span class="example-io">prices = [1,10,1,1]</span></p>
|
||
|
||
<p><strong>输出:</strong><span class="example-io">2</span></p>
|
||
|
||
<p><strong>解释:</strong></p>
|
||
|
||
<ul>
|
||
<li>用 <code>prices[0] = 1</code> 个金币购买第 1 个水果,你可以免费获得第 2 个水果。</li>
|
||
<li>免费获得第 2 个水果。</li>
|
||
<li>用 <code>prices[2] = 1</code> 个金币购买第 3 个水果,你可以免费获得第 4 个水果。</li>
|
||
<li>免费获得第 4 个水果。</li>
|
||
</ul>
|
||
</div>
|
||
|
||
<p><strong class="example">示例 3:</strong></p>
|
||
|
||
<div class="example-block">
|
||
<p><strong>输入:</strong><span class="example-io">prices = [26,18,6,12,49,7,45,45]</span></p>
|
||
|
||
<p><strong>输出:</strong><span class="example-io">39</span></p>
|
||
|
||
<p><strong>解释:</strong></p>
|
||
|
||
<ul>
|
||
<li>用 <code>prices[0] = 26</code> 个金币购买第 1 个水果,你可以免费获得第 2 个水果。</li>
|
||
<li>免费获得第 2 个水果。</li>
|
||
<li>用 <code>prices[2] = 6</code> 个金币购买第 3 个水果,你可以免费获得第 4,5,6(接下来的三个)水果。</li>
|
||
<li>免费获得第 4 个水果。</li>
|
||
<li>免费获得第 5 个水果。</li>
|
||
<li>用 <code>prices[5] = 7</code> 个金币购买第 6 个水果,你可以免费获得第 7 和 第 8 个水果。</li>
|
||
<li>免费获得第 7 个水果。</li>
|
||
<li>免费获得第 8 个水果。</li>
|
||
</ul>
|
||
|
||
<p>请注意,即使您可以免费获得第 6 个水果作为购买第 3 个水果的奖励,但您购买它是为了获得其奖励,这是更优化的。</p>
|
||
</div>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= prices.length <= 1000</code></li>
|
||
<li><code>1 <= prices[i] <= 10<sup>5</sup></code></li>
|
||
</ul>
|