Image Overlap LeetCode solution in C++

1
class Solution {
2
public:
3
int largestOverlap(vector<vector<int>> &img1, vector<vector<int>> &img2) {
4
int n = img1.size();
5
vector<pair<int, int>> vec_a;
6
vector<pair<int, int>> vec_b;
7
for (int i = 0; i < n; i++) {
8
for (int j = 0; j < n; j++) {
9
if (img1[i][j] == 1) {
10
vec_a.push_back({i, j});
11
}
12
if (img2[i][j] == 1) {
13
vec_b.push_back({i, j});
14
}
15
}
16
}
17
int ans = 0;
18
map<pair<int, int>, int> mp;
19
for (auto [i1, j1] : vec_a) {
20
for (auto [i2, j2] : vec_b) {
21
mp[{i1 - i2, j1 - j2}]++;
22
ans = max(ans, mp[{i1 - i2, j1 - j2}]);
23
}
24
}
25
return ans;
26
}
27
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0