Задача 4: Сортировка В библиотеке есть 8 томов полного собрания сочинений одного писателя. Библиотекарь обозначил их латинскими буквами от A до H в порядке выхода томов, но оказалось, что они стоят на полке в обратном порядке:
HGFEDCBA
Библиотекарь решил переставить эти книги так, чтобы они шли по порядку: ABCDEFGH. За одну операцию библиотекарь может взять две или более подряд идущих книг, достать их с полки и, не меняя порядок следования книг, переставить их в какое-то другое место на полке (между другими какими-то книгами, в начало или в конец полки).
Например, библиотекарь может взять три тома FED, достать их с полки (на полке останутся тома HGCBA), и поставить их так, чтобы перед ними оказалось 4 тома. Получится HGCBFEDA. Можно поставить их в начало полки, тогда получится последовательность FEDHGCBA, а если поставить их в конец, то получится HGCBAFED.
библиотекарю упорядочить этот ряд книг за минимальное число операций.
ответ запишите в виде последовательности строк, каждая строка должна соответствовать какому-то расположению томов на полке, то есть быть перестановкой символов ABCDEFGH. Первой строкой ответа должна быть HGFEDCBA, последней строкой ответа должна быть ABCDEFGH, и каждая строка ответа (кроме первой) должна получаться из предыдущей применением указанной операции. Обратите внимание, что переставляемый фрагмент не может состоять только из одной книги. То есть ответ должен иметь такой вид (вместо многоточий находится несколько пропущенных строк).
HGFEDCBA
...
...
...
ABCDEFGH
Чем меньше операций будет в вашем алгоритме, тем больше вы получите, при условии, что в результате применения вашего алгоритма тома будут расставлены по порядку от A до H
Стандарт предложен в 1991 году некоммерческой организацией «Консорциум Юникода» (англ. Unicode Consortium, Unicode Inc.)[4][5]. Применение этого стандарта позволяет закодировать очень большое число символов из разных систем письменности: в документах, закодированных по стандарту Юникод, могут соседствовать китайские иероглифы, математические символы, буквы греческого алфавита, латиницы и кириллицы, символы музыкальной нотной нотации, при этом становится ненужным переключение кодовых страниц[6].
Стандарт состоит из двух основных частей: универсального набора символов (англ. Universal character set, UCS) и семейства кодировок (англ. Unicode transformation format, UTF). Универсальный набор символов перечисляет допустимые по стандарту Юникод символы и присваивает каждому символу код в виде неотрицательного целого числа, записываемого обычно в шестнадцатеричной форме с префиксом U+, например, U+040F. Семейство кодировок определяет преобразования кодов символов для передачи в потоке или в файле.
Коды в стандарте Юникод разделены на несколько областей. Область с кодами от U+0000 до U+007F содержит символы набора ASCII, и коды этих символов совпадают с их кодами в ASCII. Далее расположены области символов других систем письменности, знаки пунктуации и технические символы. Часть кодов зарезервирована для использования в будущем[7]. Под символы кириллицы выделены области знаков с кодами от U+0400 до U+052F, от U+2DE0 до U+2DFF, от U+A640 до U+A69F (см. Кириллица в Юникоде)[8].
с инета