Skip to content

Commit 8d12d8b

Browse files
authored
Create 1885-count-pairs-in-two-arrays.js
1 parent 1ba426b commit 8d12d8b

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

1885-count-pairs-in-two-arrays.js

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
/**
2+
* @param {number[]} nums1
3+
* @param {number[]} nums2
4+
* @return {number}
5+
*/
6+
const countPairs = function(nums1, nums2) {
7+
const n = nums1.length
8+
const arr = Array(n)
9+
for(let i = 0; i < n; i++) {
10+
arr[i] = nums1[i] - nums2[i]
11+
}
12+
// console.log(arr)
13+
arr.sort((a, b) => a - b)
14+
// console.log(arr)
15+
let res = 0
16+
for(let i = 0; i < n - 1; i++) {
17+
const e = arr[i]
18+
const target = -e + 1
19+
let l = i + 1, r = n
20+
while(l < r) {
21+
const mid = ((l + r) >> 1)
22+
if(valid(mid, target)) r = mid
23+
else l = mid + 1
24+
}
25+
// console.log(l)
26+
res += n - l
27+
}
28+
29+
return res
30+
31+
function valid(mid, t) {
32+
return arr[mid] >= t
33+
}
34+
};

0 commit comments

Comments
 (0)