Разбиение строки на палиндромы

Рекурсия Экстремальная
Дана строка s. Верните все способы разбить её на подстроки так, чтобы каждая подстрока была палиндромом (отсортированные лексикографически наборы).
Сигнатура функции
partition_palindromes(s: str) -> list[list[str]]
Примеры
ВходОжидаемый результат
["aab"][["a", "a", "b"], ["aa", "b"]]
["a"][["a"]]
["aa"][["a", "a"], ["aa"]]
["ab"][["a", "b"]]
["aba"][["a", "b", "a"], ["aba"]]
["abc"][["a", "b", "c"]]
["aaa"][["a", "a", "a"], ["a", "aa"], ["aa", "a"], ["aaa"]]
["racecar"][["r", "a", "c", "e", "c", "a", "r"], ["r", "a", "cec", "a", "r"], ["r", "aceca", "r"], ["racecar"]]
["noon"][["n", "o", "o", "n"], ["n", "oo", "n"], ["noon"]]
["abcba"][["a", "b", "c", "b", "a"], ["a", "bcb", "a"], ["abcba"]]
1решили
1пытались
100%успешность
Войдите, чтобы решить →