Skip to content

Commit 1cd88fa

Browse files
authored
Create count-pairs-in-two-arrays.cpp
1 parent eaccb37 commit 1cd88fa

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

C++/count-pairs-in-two-arrays.cpp

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
// Time: O(nlogn)
2+
// Space: O(1)
3+
4+
class Solution {
5+
public:
6+
long long countPairs(vector<int>& nums1, vector<int>& nums2) {
7+
for (int i = 0; i < size(nums1); ++i) {
8+
nums1[i] -= nums2[i];
9+
}
10+
sort(begin(nums1), end(nums1));
11+
long long result = 0;
12+
int left = 0, right = size(nums1) - 1;
13+
while (left < right) {
14+
if (nums1[left] > 0 || -nums1[left] < nums1[right]) {
15+
result += right - left;
16+
--right;
17+
} else {
18+
++left;
19+
}
20+
}
21+
return result;
22+
}
23+
};

0 commit comments

Comments
 (0)