Задача 13 — Подстроки длины K, встречающиеся больше одного раза
Дана строка S (например, над {A,C,G,T}) и число K. Найти все подстроки длины K, которые встречаются в S как подстроки более одного раза.
Идея. Скользящее окно длины K. Для каждого окна берём его подстроку (на практике — полиномиальный хеш за O(1) на шаг), складываем в словарь «подстрока → сколько раз встретилась». В ответе — все ключи со счётчиком ≥ 2. Здесь для наглядности сравниваем сами подстроки; на экзамене — хеши Рабина-Карпа.