Class Solution

  • All Implemented Interfaces:

    
    public final class Solution
    
                        

    2561 - Rearranging Fruits\.

    Hard

    You have two fruit baskets containing n fruits each. You are given two 0-indexed integer arrays basket1 and basket2 representing the cost of fruit in each basket. You want to make both baskets equal. To do so, you can use the following operation as many times as you want:

    • Chose two indices i and j, and swap the <code>i<sup>th</sup></code> fruit of basket1 with the <code>j<sup>th</sup></code> fruit of basket2.

    • The cost of the swap is min(basket1[i],basket2[j]).

    Two baskets are considered equal if sorting them according to the fruit cost makes them exactly the same baskets.

    Return the minimum cost to make both the baskets equal or -1 if impossible.

    Example 1:

    Input: basket1 = 4,2,2,2, basket2 = 1,4,1,2

    Output: 1

    Explanation: Swap index 1 of basket1 with index 0 of basket2, which has cost 1. Now basket1 = 4,1,2,2 and basket2 = 2,4,1,2. Rearranging both the arrays makes them equal.

    Example 2:

    Input: basket1 = 2,3,4,1, basket2 = 3,2,5,1

    Output: -1

    Explanation: It can be shown that it is impossible to make both the baskets equal.

    Constraints:

    • basket1.length == bakste2.length

    • <code>1 <= basket1.length <= 10<sup>5</sup></code>

    • <code>1 <= basket1i,basket2i<= 10<sup>9</sup></code>

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
      Solution()
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      final Long minCost(IntArray basket1, IntArray basket2)
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait