Most Beautiful Item for Each Query LeetCode solution in C++

1
class Solution {
2
public:
3
vector<int> maximumBeauty(vector<vector<int>> &items, vector<int> &queries) {
4
sort(items.begin(), items.end());
5
int maxi = items[0][1];
6
// for(auto xt : items)
7
// {
8
// cout<<xt[0]<<" "<<xt[1]<<endl;
9
// }
10
for (auto &xt : items) {
11
maxi = max(maxi, xt[1]);
12
xt[1] = maxi;
13
}
14
// for(auto xt : items)
15
// {
16
// cout<<xt[0]<<" "<<xt[1]<<endl;
17
// }
18
vector<int> ans;
19
int n = items.size();
20

21
for (int key : queries) {
22
int left = 0;
23
int right = n - 1;
24

25
int count = 0;
26

27
while (left <= right) {
28
int mid = (right + left) / 2;
29
if (items[mid][0] <= key) {
30
count = mid + 1;
31
left = mid + 1;
32
} else
33
right = mid - 1;
34
}
35

36
if (count == 0)
37
ans.push_back(0);
38
else
39
ans.push_back(items[count - 1][1]);
40
}
41
return ans;
42
}
43
};

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0