常见模型: 找出滑动窗口中的最大值/最小值
int hh = 0, tt = -1;
for (int i = 0; i < n; i ++ )
{
while (hh <= tt && Check_Out(Q[hh])) hh ++ ; // 判断队头是否滑出窗口
while (hh <= tt && Check(Q[tt], i)) tt -- ;
Q[ ++ tt] = i;
}
2024-02-02 17:53:16
常见模型: 找出滑动窗口中的最大值/最小值
int hh = 0, tt = -1;
for (int i = 0; i < n; i ++ )
{
while (hh <= tt && Check_Out(Q[hh])) hh ++ ; // 判断队头是否滑出窗口
while (hh <= tt && Check(Q[tt], i)) tt -- ;
Q[ ++ tt] = i;
}