Если вместо сета использовать словарь, в котором значение это индекс последнего вхождения символа, то цикл while можно убрать и сразу сдвигать указатель до нужной позиции
@dmitrysapelnikov6 ай бұрын
Единственное что нужно не забыть - взять max(l, char_dict[s[r]]), а не просто char_dict[s[r]]. Это для случая, когда дублирующий символ уже и так выпал из текущего sliding window.
@ivormacky50786 ай бұрын
У вас алгоритм O(nk) можно за O(n), необходимо хранить текущий максиму допустимых вхождений, как бы переставая учитывать выпавшие символы!
@slxxxr6 ай бұрын
нет там O(nk), ее решение работает за O(n)
@lesson-web6 ай бұрын
Алгосики Качаем
@ALEXZANDR_GAMES14 күн бұрын
Зачем рисовать схему(как делаю я), если можно показать всё руками(как делает Алина)? 😁 P.S. Не хочу расстраивать автора видео, но тут всё же квадратичная(О(n^2)) сложность по времени. Ведь учитывается худший случай.