Most Beautiful Item for Each Query LeetCode solution in C++
1class Solution {2public:3vector<int> maximumBeauty(vector<vector<int>> &items, vector<int> &queries) {4sort(items.begin(), items.end());5int maxi = items[0][1];6// for(auto xt : items)7// {8// cout<<xt[0]<<" "<<xt[1]<<endl;9// }10for (auto &xt : items) {11maxi = max(maxi, xt[1]);12xt[1] = maxi;13}14// for(auto xt : items)15// {16// cout<<xt[0]<<" "<<xt[1]<<endl;17// }18vector<int> ans;19int n = items.size();2021for (int key : queries) {22int left = 0;23int right = n - 1;2425int count = 0;2627while (left <= right) {28int mid = (right + left) / 2;29if (items[mid][0] <= key) {30count = mid + 1;31left = mid + 1;32} else33right = mid - 1;34}3536if (count == 0)37ans.push_back(0);38else39ans.push_back(items[count - 1][1]);40}41return ans;42}43};