Skip to content

Commit 9c461a9

Browse files
authored
Update 1879-minimum-xor-sum-of-two-arrays.js
1 parent 24fe085 commit 9c461a9

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

1879-minimum-xor-sum-of-two-arrays.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,28 @@
1+
/**
2+
* @param {number[]} nums1
3+
* @param {number[]} nums2
4+
* @return {number}
5+
*/
6+
const minimumXORSum = function (nums1, nums2) {
7+
const n = nums1.length, dp = Array(1 << n).fill(Infinity)
8+
return dfs(0, 0)
9+
function dfs(i, mask) {
10+
if(i === n) return 0
11+
if(dp[mask] !== Infinity) return dp[mask]
12+
for(let j = 0; j < n; j++) {
13+
if((mask & (1 << j)) === 0) {
14+
dp[mask] = Math.min(
15+
dp[mask],
16+
(nums1[i] ^ nums2[j]) + dfs(i + 1, mask | (1 << j))
17+
)
18+
}
19+
}
20+
return dp[mask]
21+
}
22+
}
23+
24+
// another
25+
126
/**
227
* @param {number[]} nums1
328
* @param {number[]} nums2

0 commit comments

Comments
 (0)