Конкатенация коротких уникальных слов
Medium
Найдите все стартовые индексы i, для которых среди k подряд идущих слов
words[i..i+k) все слова попарно различны. Верните список таких i по возрастанию.Примеры:
Вход:
{"words": ["bar", "foo", "bar", "the"], "k": 2}
Выход:
[0, 1, 2]
Объяснение: При k=2 окна (bar,foo), (foo,bar), (bar,the) — во всех слова разные → [0,1,2].
Вход:
{"words": ["a", "b", "c", "a"], "k": 3}
Выход:
[0, 1]
Объяснение: Окна длины 3: (a,b,c) и (b,c,a) — без повторов → старты [0,1]; окно (c,a) короткое и не рассматривается.
Вход:
{"words": [], "k": 1}
Выход:
[]
Объяснение: Пустой список слов → [].
Ограничения:
0 <= n <= 10^5; sum lengths of words <= 10^6; слова содержат буквы/цифры
Комментарии (0)
Войдите, чтобы оставить комментарий
Пока нет комментариев. Будьте первым!