给你两个大小为 n 的整数数组 nums1 和 nums2。
你可以对这两个数组执行以下两种操作任意次:
i 和 j。然后,选择交换 nums1[i] 和 nums1[j],或者交换 nums2[i] 和 nums2[j]。此操作是 免费的。i。然后,交换 nums1[i] 和 nums2[i]。此操作 花费为 1。返回一个整数,表示使 nums1 和 nums2 相同 的 最小花费。如果不可能做到,返回 -1。
示例 1:
输入: nums1 = [10,20], nums2 = [20,10]
输出: 0
解释:
nums2[0] = 20 和 nums2[1] = 10。
nums2 变为 [10, 20]。nums1 和 nums2 现在相同。花费为 0。示例 2:
输入: nums1 = [10,10], nums2 = [20,20]
输出: 1
解释:
nums1[0] = 10 和 nums2[0] = 20。
nums1 变为 [20, 10]。nums2 变为 [10, 20]。nums2[0] = 10 和 nums2[1] = 20。
nums2 变为 [20, 10]。nums1 和 nums2 现在相同。花费为 1。示例 3:
输入: nums1 = [10,20], nums2 = [30,40]
输出: -1
解释:
不可能使两个数组相同。因此,答案为 -1。
提示:
2 <= n == nums1.length == nums2.length <= 8 * 1041 <= nums1[i], nums2[i] <= 8 * 104