Найти - Пользователи
Полная версия: Как определяется самый длинный из палиндромов?
Начало » Python для новичков » Как определяется самый длинный из палиндромов?
1
Valera_idi_syuda
Привет. Ниже код, который определяет есть ли в стороке подстрока-палиндром. Но я не могу понять, как этот код определяет самый длинный из них…
 def longest_palindromic(text):
    for l in range(len(text)+1, 1, -1):
        for i in range(len(text) - l + 1):
            s = text[i:i+l]
            if s == s[::-1]:
                return s
terabayt
Valera_idi_syuda
Но я не могу понять, как этот код определяет самый длинный из них…
по сути в l идет перебор от максимальной возможной до 1 длина слова
а i это смещение
 def longest_palindromic(text):
    for l in range(len(text)+1, 1, -1):
        for i in range(len(text) - l + 1):
            print(i, l)
            s = text[i:i+l]
            if s == s[::-1]:
                return s
print longest_palindromic('qweewqvdv uiu pop lol')
посмотрите вывод и станет все понятно
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB