Недавно я обнаружил проблему со конкурсом, которая просит вас вычислить минимальное количество символов, которое должно быть вставлено (в любом месте) в строке, чтобы превратить его в палиндром.
Например, с учетом строки: "abcbd" мы можем превратить ее в палиндром, вставив только два символа: один после "a", а другой после "d": "a d bcbd < Ь > а".
Это похоже на обобщение аналогичной проблемы, которая запрашивает одно и то же, за исключением того, что символы могут быть добавлены только в конце - это довольно простое решение в O (N) с использованием хеш-таблиц.
Я пытаюсь изменить алгоритм расстояния Levenshtein для решения этой проблемы, но не был успешным. Любая помощь в том, как решить эту проблему (это не обязательно должно быть эффективным, меня просто интересует любое решение DP), было бы оценено.