Class Solution
java.lang.Object
g2701_2800.s2735_collecting_chocolates.Solution
2735 - Collecting Chocolates.<p>Medium</p>
<p>You are given a <strong>0-indexed</strong> integer array <code>nums</code> of size <code>n</code> representing the cost of collecting different chocolates. The cost of collecting the chocolate at the index <code>i</code> is <code>nums[i]</code>. Each chocolate is of a different type, and initially, the chocolate at the index <code>i</code> is of <code>i<sup>th</sup></code> type.</p>
<p>In one operation, you can do the following with an incurred <strong>cost</strong> of <code>x</code>:</p>
<ul>
<li>Simultaneously change the chocolate of <code>i<sup>th</sup></code> type to <code>((i + 1) mod n)<sup>th</sup></code> type for all chocolates.</li>
</ul>
<p>Return <em>the minimum cost to collect chocolates of all types, given that you can perform as many operations as you would like.</em></p>
<p><strong>Example 1:</strong></p>
<p><strong>Input:</strong> nums = [20,1,15], x = 5</p>
<p><strong>Output:</strong> 13</p>
<p><strong>Explanation:</strong> Initially, the chocolate types are [0,1,2]. We will buy the 1<sup>st</sup> type of chocolate at a cost of 1.</p>
<p>Now, we will perform the operation at a cost of 5, and the types of chocolates will become [1,2,0]. We will buy the 2<sup>nd</sup> type of chocolate at a cost of 1.</p>
<p>Now, we will again perform the operation at a cost of 5, and the chocolate types will become [2,0,1]. We will buy the 0<sup>th</sup> type of chocolate at a cost of 1.</p>
<p>Thus, the total cost will become (1 + 5 + 1 + 5 + 1) = 13. We can prove that this is optimal.</p>
<p><strong>Example 2:</strong></p>
<p><strong>Input:</strong> nums = [1,2,3], x = 4</p>
<p><strong>Output:</strong> 6</p>
<p><strong>Explanation:</strong> We will collect all three types of chocolates at their own price without performing any operations. Therefore, the total cost is 1 + 2 + 3 = 6.</p>
<p><strong>Constraints:</strong></p>
<ul>
<li><code>1 <= nums.length <= 1000</code></li>
<li><code>1 <= nums[i] <= 10<sup>9</sup></code></li>
<li><code>1 <= x <= 10<sup>9</sup></code></li>
</ul>
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
Solution
public Solution()
-
-
Method Details
-
minCost
public long minCost(int[] nums, int x)
-