Напишите проверку на то, является ли строка палиндромом.

Палиндром — это слово или фраза, которые одинаково читаются слева направо и справа налево.

def is_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" является палиндромом.

или

class Solution:
    def isPalindrome(self, s: str) -> bool:
        # Удаляем пробелы и приводим строку к нижнему регистру
        s = ''.join(char.lower() for char in s if char.isalnum())

        # Сравниваем строку с её обратным порядком
        return s == s[::-1]

Last updated

Was this helpful?