Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts LeetCode solution in C++

1
class Solution {
2
public:
3
int maxArea(int h, int w, vector<int> &horizontalCuts, vector<int> &verticalCuts) {
4
int mod = 1e9 + 7;
5
sort(horizontalCuts.begin(), horizontalCuts.end());
6
sort(verticalCuts.begin(), verticalCuts.end());
7
// cout << 1;
8
horizontalCuts.push_back(h);
9
verticalCuts.push_back(w);
10
// cout << 1;
11
int prev = 0;
12
int vert = INT_MIN, hori = INT_MIN;
13
for (int i = 0; i < verticalCuts.size(); i++) {
14
if (vert < verticalCuts[i] - prev) vert = verticalCuts[i] - prev;
15
prev = verticalCuts[i];
16
}
17
// cout << 1;
18
prev = 0;
19
for (int i = 0; i < horizontalCuts.size(); i++) {
20
if (hori < horizontalCuts[i] - prev) hori = horizontalCuts[i] - prev;
21
prev = horizontalCuts[i];
22
}
23
return ((long long)vert * hori) % mod;
24
}
25
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0