Изменения

Перейти к: навигация, поиск

Участница:Mariashka

245 байт убрано, 01:24, 27 апреля 2015
Нет описания правки
# Переберем длину повтора <tex> 2p </tex>. Для каждого <tex> p </tex> получим интервал индексов конца повтора в строке <tex> v </tex>: <tex> [x, y] </tex>.
# Добавим к ответу, учитывая смещение в исходной строке <tex> s </tex> : <tex>(2p, x + shift + u.len, y + shift + u.len) </tex>
 
Итоговая асимптотика: <tex> O(t) </tex>
Докажем следующее утверждение для нахождения интервала <tex> [x, y] </tex>:
# Переберем длину повтора <tex> 2p </tex>. Для каждого <tex> p </tex> получим интервал индексов конца повтора в строке <tex> v </tex>: <tex> [x, y] </tex>.
# Добавим к ответу, учитывая смещение в исходной строке <tex> s </tex> : <tex>(2p, x + shift + u.len, y + shift + u.len) </tex>
 
Итоговая асимптотика: <tex> O(t) </tex>
Докажем следующее утверждение для нахождения интервала <tex> [x, y] </tex>:
|proof= TODO
}}
 
=== Результат ===
 
# Делим строку пополам
# Рекурсивно запускаемся от полученных строк
# Вычислим LP, LS, RP, RS для t с помощью z-функции: <tex> O(t) </tex>
# Найдем правые и левые повторы, как изложено выше: <tex> O(t) </tex>
== Асимптотика ==
102
правки

Навигация