Учитывая, что 8 букв можно переставить примерно 40 тысячами можно просто запустить поиск в ширину, сохранить для всех перестановок то, из какой строчки они получились, и потом восстановить ответ для строчки abcdefgh.
while not to_process.empty(): s, prev = to_process.get() if s in prec: continue for i in range(7): for j in range(i + 1, 8): if i == 0: next_s = s[j::-1] + s[j+1:] else: next_s = s[:i] + s[j:i-1:-1] + s[j+1:] if next_s not in prec: to_process.put((next_s, s)) prec[s] = prev
current = "abcdefgh" print(current) while prec[current] is not None: current = prec[current] print(current)
1. Он американский ученый, основоположник кибернетики. А
также теории об искусственном интеллекте. Славу ему принесли его работы в
математике и физике. Его большая роль в том, что именно он впервые смог понять
огромное значение того, что информация будет использоваться в процессах
управления.
2.
Основатель теории информации, которая нашла свое место в современных
системах связи. В 40-х годах века ввел понятие «бит».
3.
Термин, который означает «выполняющееся
действие по запросу», ввел Тед Нельсон в веке, в 1963 году.
4.
В 1989 году. Изобретателем считают
двух человек – Тима Бернерс-Ли и Роберт Кайо.
5.
Эйлер, в честь которого назвали графическую
схему, был ученым. Его сферой изучения была математика, физика, астрономия,
химия, ботаника, музыка, медицина и другие направления. Он автор 600 трудов.
не за что! и на сердечко