Sliding window utrzymuje przesuwające się okno [l..r] i aktualizuje je w jednym przebiegu. Zwiększasz `r` i przesuwasz `l`, żeby spełnić warunek (np. suma <= X, maks. K różnych). Wiele zadań spada z O(n^2) do O(n), bo każdy wskaźnik przesuwa się w prawo maksymalnie n razy.
Rozwinięcie krótkiej odpowiedzi — co zwykle ma znaczenie w praktyce:
Krótki przykład (szablon do wyjaśniania):
// Example: discuss trade-offs for "sliding-window:-co-to-jest-i-kiedy-jest-lepsze-n"
function explain() {
// Start from the core idea:
// Sliding window utrzymuje przesuwające się okno [l..r] i aktualizuje je w jednym przebiegu.
}