Package g0501_0600.s0546_remove_boxes
Class Solution
java.lang.Object
g0501_0600.s0546_remove_boxes.Solution
546 - Remove Boxes.<p>Hard</p>
<p>You are given several <code>boxes</code> with different colors represented by different positive numbers.</p>
<p>You may experience several rounds to remove boxes until there is no box left. Each time you can choose some continuous boxes with the same color (i.e., composed of <code>k</code> boxes, <code>k >= 1</code>), remove them and get <code>k * k</code> points.</p>
<p>Return <em>the maximum points you can get</em>.</p>
<p><strong>Example 1:</strong></p>
<p><strong>Input:</strong> boxes = [1,3,2,2,2,3,4,3,1]</p>
<p><strong>Output:</strong> 23</p>
<p><strong>Explanation:</strong></p>
<pre><code> [1, 3, 2, 2, 2, 3, 4, 3, 1] ----> [1, 3, 3, 4, 3, 1]
(3\*3=9 points) ----> [1, 3, 3, 3, 1]
(1\*1=1 points) ----> [1, 1]
(3\*3=9 points) ----> []
(2\*2=4 points)
</code></pre>
<p><strong>Example 2:</strong></p>
<p><strong>Input:</strong> boxes = [1,1,1]</p>
<p><strong>Output:</strong> 9</p>
<p><strong>Example 3:</strong></p>
<p><strong>Input:</strong> boxes = [1]</p>
<p><strong>Output:</strong> 1</p>
<p><strong>Constraints:</strong></p>
<ul>
<li><code>1 <= boxes.length <= 100</code></li>
<li><code>1 <= boxes[i] <= 100</code></li>
</ul>
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
Solution
public Solution()
-
-
Method Details
-
removeBoxes
public int removeBoxes(int[] boxes)
-