Сегодня на уроке информатики Данила узнал, что слова можно сравнивать в лексикографическом (алфавитном) порядке.
Лексикографический порядок слов это способ их упорядочивания, аналогичный расположению в словаре. Сравнение слов при этом осуществляется по следующим правилам.
Сравнение букв: cначала сравниваются первые символы слов. Слово, первый символ которого стоит раньше в алфавите, считается меньшим. Например, слово «яблоко» будет стоять после слова «груша», потому что «я» стоит позже «г».
Длина слов: если два слова начинаются с одинаковых букв, то дальше сравниваются их символы по порядку. Если одно слово является префиксом другого (например, «кот» и «котёнок»), то более короткое слово считается меньшим, даже если они совпадают до определённой позиции.
Примеры: «собака» < «собачка», «дерево» < «долина», «апельсин» > «ананас». Такая система упорядочивания полезна для сортировки списков слов, поиска и обработки текстовой информации.
В процессе подготовки к олимпиаде по информатике Данила написал на полоске бумаги слово «СИРИУСОЛИМП», разрезал полоску в nn местах и переставил получившиеся куски местами (все получившиеся части исходного слова были использованы). Он мечтает сделать исходный «СИРИУСОЛИМП» как можно большим.
Ответьте на вопросы.
1) Какое наибольшее слово в лексикографическом порядке он может получить при n=1 (то есть сделав единственный разрез)?
2) Какое наибольшее слово в лексикографическом порядке он может получить при n=2?
3) Какое наибольшее слово в лексикографическом порядке он может получить при n=3?
4) Какое наименьшее количество разрезов необходимо сделать, чтобы получить из «СИРИУСОЛИМП» наибольшее лексикографическое слово?
Каждый верный ответ даст 25 баллов. Менее точные ответы будут оцениваться меньшим количеством баллов.
Буквы русского алфавита (для справки): А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я.
Ответ
Ответ:
Длинное описательное условие, а ответ будет гораздо короче.
1) При одном разрезе: Самая старшая буква из всех предложенных это «У». С неё будет начинаться слово. Потому отрезаем перед ней и переставляем.
Потому будет слово
«УСОЛИМП | СИРИ»
2) При двух разрезах: Можно отрезать буквы «УС» и вставить перед первой «С»
Получим слово
«УС | СИРИ | ОЛИМП»
3) При трех разрезах: Отрезаем «УС» и ещё первую «С». И тогда можно вставить их в следующем порядке:
«УС | С | ОЛИМП | ИРИ»
4) Для решения сначала напишем это максимальное слово расставив буквы по не возрастанию
У — С — С — Р — П — О — М — Л — И — И — И
Из предложенной расстановки видим только возможные пары «УС» и «ЛИ» из начального слова, а все остальные по одной букве. Потому так и разрезаем считая с начала слова по одной букве и 2 раза по две.
Посчитаем, получим 8 разрезов.