java.lang.Object
g2301_2400.s2333_minimum_sum_of_squared_difference.Solution

public class Solution extends Object
2333 - Minimum Sum of Squared Difference.<p>Medium</p> <p>You are given two positive <strong>0-indexed</strong> integer arrays <code>nums1</code> and <code>nums2</code>, both of length <code>n</code>.</p> <p>The <strong>sum of squared difference</strong> of arrays <code>nums1</code> and <code>nums2</code> is defined as the <strong>sum</strong> of <code>(nums1[i] - nums2[i])<sup>2</sup></code> for each <code>0 <= i < n</code>.</p> <p>You are also given two positive integers <code>k1</code> and <code>k2</code>. You can modify any of the elements of <code>nums1</code> by <code>+1</code> or <code>-1</code> at most <code>k1</code> times. Similarly, you can modify any of the elements of <code>nums2</code> by <code>+1</code> or <code>-1</code> at most <code>k2</code> times.</p> <p>Return <em>the minimum <strong>sum of squared difference</strong> after modifying array</em> <code>nums1</code> <em>at most</em> <code>k1</code> <em>times and modifying array</em> <code>nums2</code> <em>at most</em> <code>k2</code> <em>times</em>.</p> <p><strong>Note</strong>: You are allowed to modify the array elements to become <strong>negative</strong> integers.</p> <p><strong>Example 1:</strong></p> <p><strong>Input:</strong> nums1 = [1,2,3,4], nums2 = [2,10,20,19], k1 = 0, k2 = 0</p> <p><strong>Output:</strong> 579</p> <p><strong>Explanation:</strong> The elements in nums1 and nums2 cannot be modified because k1 = 0 and k2 = 0.</p> <p>The sum of square difference will be: (1 - 2)<sup>2</sup> + (2 - 10)<sup>2</sup> + (3 - 20)<sup>2</sup> + (4 - 19)<sup>2</sup> = 579.</p> <p><strong>Example 2:</strong></p> <p><strong>Input:</strong> nums1 = [1,4,10,12], nums2 = [5,8,6,9], k1 = 1, k2 = 1</p> <p><strong>Output:</strong> 43</p> <p><strong>Explanation:</strong> One way to obtain the minimum sum of square difference is:</p> <ul> <li> <p>Increase nums1[0] once.</p> </li> <li> <p>Increase nums2[2] once.</p> </li> </ul> <p>The minimum of the sum of square difference will be: (2 - 5)<sup>2</sup> + (4 - 8)<sup>2</sup> + (10 - 7)<sup>2</sup> + (12 - 9)<sup>2</sup> = 43.</p> <p>Note that, there are other ways to obtain the minimum of the sum of square difference, but there is no way to obtain a sum smaller than 43.</p> <p><strong>Constraints:</strong></p> <ul> <li><code>n == nums1.length == nums2.length</code></li> <li><code>1 <= n <= 10<sup>5</sup></code></li> <li><code>0 <= nums1[i], nums2[i] <= 10<sup>5</sup></code></li> <li><code>0 <= k1, k2 <= 10<sup>9</sup></code></li> </ul>
  • Constructor Details

    • Solution

      public Solution()
  • Method Details

    • minSumSquareDiff

      public long minSumSquareDiff(int[] nums1, int[] nums2, int k1, int k2)