Программа работает со структурой, в ней содержатся: последовательность символов и количество повторений это последовательности. Сначала заносим в структуру все текст и указываем, что она встречается в тексте один раз. Затем будем каждый делить строку на две части и искать повторения, потом на 3 и т.д. до тех пор пока это возможно. Все данные заносятся в структуру и на последнем щаге в структуре ищем наиболее часто встречающуюся последовательность, выбираем из нее ту последовательность, которая максимальна по длине.
Исходный код написан на языке C#