Поиск похожих строк (LCS + Расстояние Левенштейна)
Средняя
Ограничение по времени выполнения 1 секунда
Ограничение по использованию памяти 256 мегабайт
Дан набор строк (в общем случае разной длины), состоящих из строчных букв латинского алфавита.
Дана строка (запрос пользователя), также состоящая из строчных букв латинского алфавита.
Каждая строка содержит не более 5 слов.
Строка также содержит не более 5 слов.
Слова отделены пробелами.
Необходимо найти «наиболее похожую» на запрос пользователя строку из набора.
Будем учитывать, что:
Пользователь мог ввести только часть (подпоследовательность) строки, которую хотел найти в наборе.
Пользователь мог допустить опечатки: пропуск букв, написание лишних букв, замена букв на другие.
Пользователь мог поменять слова местами.
Входные данные
Число , ().
Затем следует строка , ().
Далее следуют строки , ().
Выходные данные
Порядковый номер строки из набора , «наиболее похожей» на .
Примеры
Входные данные
8 kayu u eomneky dgn f hsobhelzjk mvh ei tq z v fo nzm pm w jpkymliu oioupsiw
Ответ
7
Отправки 50
Коэффициент принятия 6 %