单调栈模版
常见模型:
-
单调栈的应用场景非常广泛,常见的应用包括:
-
下一个更大/小元素问题:解决元素间的关系问题。
-
矩形面积问题:优化矩形问题的计算。
-
滑动窗口最大值:实时监控数据流中的最大值。
-
括号匹配:解析表达式。
-
动态规划优化:解决涉及股票买卖的动态问题。
int tt = 0;
int n = sc.nextInt();
int stk[] = new int[n];
int x = sc.nextInt();
for (int i = 0; i < n; i++) {
while (tt != 0 && stk[tt] >= x) {
tt--;
}
stk[++tt] = i;
}