Fixed and variable sliding windows, plus monotonic deque for range max.
Fixed: Initialize size , slide by add/remove. time.
Variable: Expand right, shrink left when invalid. Each element touched once.
Patterns:
- Longest/shortest with condition → Variable
- All windows size → Fixed
- Max in each window → Monotonic deque
Transforms to by reusing computation.