2. книжная полка. в библиотеке на полке стоят 8 томов полного собрания сочинений одного писателя. библиотекарь обозначил их латинскими буквами от а до н в порядке выхода томов. получилась следующая последовательность: e d g h c b f a библиотекарь решил переставить эти книги так чтобы они шли по порядку : a b c d e f g h. за одно действие библиотекарь может взять несколько подряд идущих книг, достать их с полки и, не меняя порядок следования книг, перевернуть их и поставить на место в обратном порядке. например если библиотекарь достанет книги h по f и перевернет их то новый порядок следования книг будет таким: e d g f b c g h a. библиотекарю упорядочить этот ряд книг за минимальное число действий
251
481
Ответы на вопрос:
Учитывая, что 8 букв можно переставить примерно 40 тысячами способов, можно просто запустить поиск в ширину, сохранить для всех перестановок то, из какой строчки они получились, и потом восстановить ответ для строчки abcdefgh. код на python 3: from queue import queue to_process = queue() to_process.put(("edghcbfa", none)) prec = {} 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) вывод программы: abcdefghedcbafghedcbhgfaedbchgfaedghcbfa
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
minshinarena10.06.2020 06:07
-
MrHelpOnline11.01.2020 03:38
-
shinkevivh200119.09.2021 21:16
-
z7909012348827.05.2022 12:17
-
aruzhaan200327.01.2023 11:52
-
udinaaa31.05.2020 14:22
-
MiraukiTokugava13.02.2022 08:54
-
baltan197812.01.2021 19:03
-
dreamsk83125.05.2022 14:19
-
asikg2715.11.2020 15:00
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.