leetcode

Solution to some Leetcode problems written in C++
git clone git://git.dimitrijedobrota.com/leetcode.git
Log | Files | Refs | README | LICENSE

0496.cpp (600B)


0 class Solution {
1 public:
2 vector<int> nextGreaterElement(vector<int> &nums1, vector<int> &nums2) {
3 vector<int> res(nums1.size(), -1);
4 unordered_map<int, int> um;
5 stack<int> st;
7 for (int i = 0; i < nums2.size(); i++) {
8 while (!st.empty() && nums2[i] > st.top()) {
9 um.insert(make_pair(st.top(), nums2[i]));
10 st.pop();
11 }
12 st.push(nums2[i]);
13 }
15 for (int i = 0; i < nums1.size(); i++)
16 if (um.find(nums1[i]) != um.end()) res[i] = um[nums1[i]];
18 return res;
19 }
20 };