В библиотеке есть 8 томов полного собрания сочинений одного писателя. Библиотекарь обозначил их латинскими буквами от A до H в порядке выхода томов, но оказалось, что они стоят на полке в обратном порядке: HGFEDCBA
Библиотекарь решил переставить эти книги так, чтобы они шли по порядку: ABCDEFGH. За одну операцию библиотекарь может взять две или более подряд идущих книг, достать их с полки и, не меняя порядок следования книг, переставить их в какое-то другое место на полке (между другими какими-то книгами, в начало или в конец полки).
Например, библиотекарь может взять три тома FED, достать их с полки (на полке останутся тома HGCBA), и поставить их так, чтобы перед ними оказалось 4 тома. Получится HGCBFEDA. Можно поставить их в начало полки, тогда получится последовательность FEDHGCBA, а если поставить их в конец, то получится HGCBAFED.
библиотекарю упорядочить этот ряд книг за минимальное число операций.
ответ запишите в виде последовательности строк, каждая строка должна соответствовать какому-то расположению томов на полке, то есть быть перестановкой символов ABCDEFGH. Первой строкой ответа должна быть HGFEDCBA, последней строкой ответа должна быть ABCDEFGH, и каждая строка ответа (кроме первой) должна получаться из предыдущей применением указанной операции. Обратите внимание, что переставляемый фрагмент не может состоять только из одной книги. То есть ответ должен иметь такой вид (вместо многоточий находится несколько пропущенных строк).
HGFEDCBA
...
...
...
ABCDEFGH
Чем меньше операций будет в вашем алгоритме, тем больше вы получите, при условии, что в результате применения вашего алгоритма тома будут расставлены по порядку от A до H.
HGFEDCBA
EHGFDCBA
EFDCGHBA
EFBADCGH
ADEFBCGH
ABCDEFGH