# LeetCode: Equal Sum Arrays With Minimum Number Of Operations Solution

## Approach

store the array of changes

- with array of larger sum, calculate the change to 1 for each
- with array of smaller sum, calculate the change to 6 for each

sort the change desc, decrease the init sum diff between two arrays

## Implementation

1/**2 * @param {number[]} nums13 * @param {number[]} nums24 * @return {number}5 */6var minOperations = function (nums1, nums2) {7 const sum = arr => arr.reduce((acc, el) => acc + el, 0)89 let largerSumArr, smallerSumArr10 if (sum(nums1) > sum(nums2)) {11 largerSumArr = [...nums1]12 smallerSumArr = [...nums2]13 } else {14 largerSumArr = [...nums2]15 smallerSumArr = [...nums1]16 }1718 let res = 019 let diff = sum(largerSumArr) - sum(smallerSumArr)2021 if (diff === 0) {22 return 023 }2425 let changes = [26 ...largerSumArr.map(el => el - 1),27 ...smallerSumArr.map(el => 6 - el),28 ].sort((a, b) => b - a)2930 for (const change of changes) {31 res++32 diff -= change33 if (diff <= 0) return res34 }3536 return -137}

## Comments

Loading comments...

## Tags

leetcode

greedy

## Apply and earn a $2,500 bonus once you're hired on your first job!

Clients from the Fortune 500 to Silicon Valley startups

Choose your own rate, get paid on time

From hourly, part-time, to full-time positions

Flexible remote working environment

A lot of open JavaScript jobs!!

**Fact corner:** Referred talent are 5x more likely to pass the Toptal screening process than the average applicant.

**Still hesitate?** Read HoningJS author's guide on dealing with Toptal interview process.

## Next Post

LeetCode: Closest Dessert Cost

Feb 28, 2021

## Previous Post

LeetCode: Divide Two Integers

Feb 28, 2021