forked from luliyucoordinate/Leetcode
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path1019.cpp
More file actions
25 lines (24 loc) · 642 Bytes
/
1019.cpp
File metadata and controls
25 lines (24 loc) · 642 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
static int x = []() {std::ios::sync_with_stdio(false); cin.tie(0); return 0; }();
class Solution
{
public:
vector<int> nextLargerNodes(ListNode* head)
{
vector<int> res, stack;
for (ListNode* node = head; node; node = node->next)
{
while (stack.size() && res[stack.back()] < node->val)
{
res[stack.back()] = node->val;
stack.pop_back();
}
stack.push_back(res.size());
res.push_back(node->val);
}
for (int i : stack)
{
res[i] = 0;
}
return res;
}
};