Skip to content

p1rattttt/KISS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KISS

Задача № 211

Алексеев Максим Б05-023

Задача решалась в предположении, что и текст, и строка влезет в оперативную память.

Идея решения:

Строим суффиксный автомат на тексте за O(n), где n - длина текста, в процессе предпосчёта насчитываем первое вхождение. На запросы отвечаем за O(m), где m - длина запроса.

Инструкция по сборе:

mkdir build && cd build

cmake ..

make

После чего в папке build появится исполняемый файл KISS

Пример использования:

build/KISS input.txt

input: Good

return: 1

input: Task

return: 17

Также код можно использовать как библиотеку:

Надо подключить файл Solver.hpp, инициализировать класс Sover, в его конструктор передаётся название файла, для поиска первого вхождения надо вызвать у этого объекта функцию FirstEntry и передать туда искомую строчку.

About

entrance examinations

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published