1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-11 02:58:13 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/水果成篮 [fruit-into-baskets].html
2022-03-29 12:43:11 +08:00

57 lines
2.3 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<p>你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组 <code>fruits</code> 表示,其中 <code>fruits[i]</code> 是第 <code>i</code> 棵树上的水果 <strong>种类</strong></p>
<p>你想要尽可能多地收集水果。然而,农场的主人设定了一些严格的规矩,你必须按照要求采摘水果:</p>
<ul>
<li>你只有 <strong>两个</strong> 篮子,并且每个篮子只能装 <strong>单一类型</strong> 的水果。每个篮子能够装的水果总量没有限制。</li>
<li>你可以选择任意一棵树开始采摘,你必须从 <strong>每棵</strong> 树(包括开始采摘的树)上 <strong>恰好摘一个水果</strong> 。采摘的水果应当符合篮子中的水果类型。每采摘一次,你将会向右移动到下一棵树,并继续采摘。</li>
<li>一旦你走到某棵树前,但水果不符合篮子的水果类型,那么就必须停止采摘。</li>
</ul>
<p>给你一个整数数组 <code>fruits</code> ,返回你可以收集的水果的 <strong>最大</strong> 数目。</p>
<p>&nbsp;</p>
<p><strong>示例 1</strong></p>
<pre>
<strong>输入:</strong>fruits = [<em><strong>1,2,1</strong></em>]
<strong>输出:</strong>3
<strong>解释:</strong>可以采摘全部 3 棵树。
</pre>
<p><strong>示例 2</strong></p>
<pre>
<strong>输入:</strong>fruits = [0,<em><strong>1,2,2</strong></em>]
<strong>输出:</strong>3
<strong>解释:</strong>可以采摘 [1,2,2] 这三棵树。
如果从第一棵树开始采摘,则只能采摘 [0,1] 这两棵树。
</pre>
<p><strong>示例 3</strong></p>
<pre>
<strong>输入:</strong>fruits = [1,<em><strong>2,3,2,2</strong></em>]
<strong>输出:</strong>4
<strong>解释:</strong>可以采摘 [2,3,2,2] 这四棵树。
如果从第一棵树开始采摘,则只能采摘 [1,2] 这两棵树。
</pre>
<p><strong>示例 4</strong></p>
<pre>
<strong>输入:</strong>fruits = [3,3,3,<em><strong>1,2,1,1,2</strong></em>,3,3,4]
<strong>输出:</strong>5
<strong>解释:</strong>可以采摘 [1,2,1,1,2] 这五棵树。
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= fruits.length &lt;= 10<sup>5</sup></code></li>
<li><code>0 &lt;= fruits[i] &lt; fruits.length</code></li>
</ul>