1 条题解
-
0
把课堂练习和作业结合一下
思路
维护单调递减队列,求出滑动过程中每个窗口的最大值,同样的方法维护单调递增队列,求出滑动过程中每个窗口的最小值,作差输出即可
参考代码
//关键代码 //维护单调递减队列 if (q1[head1] + k <= i) head1++; while (head1 <= tail1 && a[q1[tail1]] <= a[i]) tail1--; q1[++tail1] = i; //维护单调递增队列 if (q2[head2] + k <= i) head2++; while (head2 <= tail2 && a[q2[tail2]] >= a[i]) tail2--; q2[++tail2] = i;
- 1
信息
- ID
- 699
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- (无)
- 递交数
- 71
- 已通过
- 24
- 上传者