Skip to main content

2918.js

/** ------------------------------------------------------------------------------
*
* 2918. Minimum Equal Sum of Two Arrays After Replacing Zeros
* Topics: Greedy
* 릿코드 https://leetcode.com/problems/minimum-equal-sum-of-two-arrays-after-replacing-zeros/description/?envType=daily-question&envId=2025-05-10
*
------------------------------------------------------------------------------ */
/**
* @param {number[]} nums1
* @param {number[]} nums2
* @return {number}
*/
var minSum1 = function (nums1, nums2) {
const sum1 = nums1.reduce((a, b) => a + b)
const sum2 = nums2.reduce((a, b) => a + b)
const count1 = nums1.reduce((a, b) => (b === 0 ? ++a : a), 0)
const count2 = nums2.reduce((a, b) => (b === 0 ? ++a : a), 0)

if (sum1 + count1 > sum2 && count2 === 0) return -1
if (sum2 + count2 > sum1 && count1 === 0) return -1

return Math.max(sum1 + count1, sum2 + count2)
}

console.log(minSum1([3, 2, 0, 1, 0], [6, 5, 0]))