Напишите проверку на то, является ли строка палиндромом.
Палиндром — это слово или фраза, которые одинаково читаются слева направо и справа налево.
defis_palindrome(s):# Удаляем пробелы и приводим строку к нижнему регистру s = s.replace(" ", "").lower()# Сравниваем строку с её обратным порядкомreturn s == s[::-1]# Пример использованияstring_to_check ="A man a plan a canal Panama"result =is_palindrome(string_to_check)if result:print(f'Строка "{string_to_check}" является палиндромом.')else:print(f'Строка "{string_to_check}" не является палиндромом.')
Этот код удаляет пробелы из строки, приводит её к нижнему регистру и затем сравнивает её с обратным порядком. Если строки равны, то строка является палиндромом. В данном примере вывод будет:
Строка "A man a plan a canal Panama" является палиндромом.
или
classSolution:defisPalindrome(self,s:str) ->bool:# Удаляем пробелы и приводим строку к нижнему регистру s =''.join(char.lower() for char in s if char.isalnum())# Сравниваем строку с её обратным порядкомreturn s == s[::-1]
publicclassSolution {publicstaticvoidmain(String[] args) {String str ="radar";boolean isPalindrome =isPalindrome(str);if (isPalindrome) {System.out.println("Строка \""+ str +"\" является палиндромом."); } else {System.out.println("Строка \""+ str +"\" не является палиндромом."); } }publicstaticbooleanisPalindrome(String str) {int left =0;int right =str.length() -1;while (left < right) {if (str.charAt(left) !=str.charAt(right)) {returnfalse; } left++; right--; }returntrue; }}