Найти последнюю строку палиндрома в заданном массиве
Дан массив строк arr[] размера N , где каждая строка состоит только из строчных латинских букв. Задача состоит в том, чтобы вернуть последнюю палиндромную строку в массиве.
Примечание. Это гарантирует, что всегда присутствует одна палиндромная строка.
Примеры:
Input: arr[] = {“abc”, “car”, “ada”, “racecar”, “cool”}
Output: “racecar”
Explanation: The Last string that is palindromic is “racecar”.
Note that “ada” is also palindromic, but it is not the Last.Input: arr[] = {“def”, “aba”}
Output: “aba”
Подход: Решение основано на жадном подходе. Проверяйте каждую строку массива от последней, является ли она палиндромом или нет, а также отслеживайте последнюю строку палиндрома. Выполните следующие шаги, чтобы решить проблему:
- Инициализировать строковую переменную как пустую строку.
- Перебрать диапазон (N, 0], используя переменную i , и выполнить следующие задачи:
- Если arr[i] является палиндромом, то установите значение ans как arr[i] .
- После выполнения вышеуказанных шагов выведите значение ans в качестве ответа.
Ниже приведена реализация вышеуказанного подхода:
Временная сложность: O(N*W), где W — максимальный размер любой строки в arr[]
Вспомогательное пространство: O(1)