Применение классических комбинаторных методов к разным задачам → .10 Индукция в комбинаторике
Готовиться с нами - ЛЕГКО!
Ошибка.
Попробуйте повторить позже
У Ани и Бори было по длинной полосе бумаги. На одной из них была написана буква А, на другой — Б. Каждую минуту один из них (не
обязательно по очереди) приписывает справа или слева к слову на своей полосе слово с полосы другого. Докажите, что через сутки слово с
Аниной полосы можно будет разрезать на палиндрома (то есть слова, читающихся одинаково слева направо и справа налево), один из
которых может быть пустым.
Назовем планируемом слово, читающееся одинаково слева направо и справа налево. Докажем индукцией по что через
минут слово на
любой полосе можно будет разрезать на два палиндрома (один из которых, возможно, пустой). Тогда, если эти палиндромы поменять
местами, получится то же слово, записанное в обратном порядке.
Например, для утверждение, очевидно, верно. Пусть для
оно уже доказано. Рассмотрим слово
на полосе. Пусть после
первой минуты написано слово
и
Посадим Антона и Бориса в этот момент за полосом, на котором написаны буквы
и
и
попросим их повторять действия Анны и Бориса (т.е. если Анна приписывает букву
к слову, то Антон приписывает
к своему слову, и т.п.). Получившийся процесс длится
минуту. Тогда в конце процесса слова Антона и Бориса
можно разрезать на два палиндрома каждое, а если в них заменить каждую букву
на
то получатся слова Анны и
Бориса.
Докажем, что если к палиндрому из букв и
приписать в конце
и заменить каждую букву
на
то получится
палиндром. Действительно, пусть перед первой
стоит
букв
между первой и второй —
после последней,
-й буквы
—
букв
Тогда
при любом
В измененном слове перед первой буквой
будет
букв
между первой и
второй —
после последней,
-й буквы
—
букв
Поскольку
то полученное слово также будет
палиндромом.
Пусть, скажем, Антоново слово из букв и
разрезается на палиндромы
и
Пусть
и
— слова, полученные заменой
на
Если слово
непусто, то
и
— палиндромы, слово
начинается с
и поэтому
— тоже
палиндромом. Тогда Антоново слово разрезается на палиндромы
и
Если же слово
пусто, то
(
— палиндром)
является требуемым разбиением. Доказательство для Борисового слова аналогично.
Ошибка.
Попробуйте повторить позже
В колоде часть карт лежит рубашкой вниз. Время от времени Петя вынимает из колоды пачку из одной или нескольких подряд идущих карт, в которой верхняя и нижняя карты лежат рубашкой вниз, переворачивает всю пачку как одно целое и вставляет её в то же место колоды (если пачка состоит лишь из одной карты, то требуется только, чтобы она лежала рубашкой вниз). Докажите, что в конце концов все карты лягут рубашкой вверх, как бы ни действовал Петя.
Подсказка 1
Докажем требуемое по индукции. Как сделать переход от n+1 карты к n? Какую карту можно гарантированно не трогать?
Подсказка 2
Заметим, что в зависимости от расположения верхней карты, ее можно задействовать не больше одного раза.
Индукция по толщине колоды. База (колода из одной карты) очевидна.
Переход: пусть утверждение задачи доказано для колоды из карт. Рассмотрим колоду из
карты. Если верхняя карта лежит
рубашкой вверх, то она в переворотах не участвует, то есть Петя работает только с оставшимися
картами, а значит в этом случае по
предположению индукции всё верно.
Пусть верхняя карта лежит рубашкой вниз. Как только Петя её задействует, наверху окажется карта рубашкой вверх, что приводит нас к уже разобранному случаю. Если же Петя упорно не будет её трогать, то, по предположению индукции, в некоторый момент все оставшиеся карты лягут рубашкой вверх. Теперь Пете придется перевернуть верхнюю карту, на чём процесс и закончится.
Ошибка.
Попробуйте повторить позже
В строку записаны в некотором порядке натуральные числа от до
Над строкой производится следующая операция: если на первом
месте стоит число
то первые
чисел в строке переставляются в обратном порядке. Докажите, что через несколько таких операций на
первом месте окажется число
Подсказка 1
Кажется, что наше доказательство не будет использовать число 1993 ;) поэтому попробуйте доказать требуемое при помощи индукции по количеству чисел!
Подсказка 2
База очевидна, а вот для шага нам нужно зацепиться за что-то неизменяемое, чтобы одна из карт "не мешала" двигаться остальным.
Подсказка 3
Докажите, что когда-то число n или некоторое другое попадёт в конец и никогда оттуда не убежит ;)
Индукцией по докажем это утверждение для строки, в которую записаны числа от 1 до
.
База. При на первом месте уже стоит число 1.
Шаг индукции. Если в результате применения описанных операций к строке из чисел число
окажется на последнем месте, то к
первым
числам можно применить предположение индукции, так как число
уже никуда не переместится.
Если же число никогда не окажется на последнем месте, то оно не окажется и на первом месте. Значит, число, находящееся на
последнем месте, никуда не перемещается. Поэтому, поменяв местами число
и число, стоящее на последнем месте, мы никак не изменим
происходящего. Но теперь к первым
числам можно применить предположение индукции.
Ошибка.
Попробуйте повторить позже
В классе учится человека. Для участия в стритболе они организовали
команды по
человека в каждой. Докажите, что найдутся
две команды, в которых ровно
общий участник.
Подсказка 1
Задачу можно свести к следующей: если в классе n человек и выбрана n + 1 различная тройка детей, то найдутся две тройки, пересекающиеся ровно по 1 ребёнку, либо такой конфигурации не существует.
Подсказка 2
Попробуйте доказать утверждение по индукции! Нам нужно как-то уметь спускаться к одному из предыдущих случаев, то есть уметь "убирать" людей. Но убирать нужно аккуратно, "целыми" тройками!
Подсказка 3
Предположите, что все тройки между собой или не пересекаются, или пересекаются по двум ребятам. В скольких тройках может участвовать один ребёнок? А какой обязательно найдется? Быть может, рассмотрим одного, по которым пересекаются сразу много троек?
Подсказка 4
Рассмотрите ребенка X, который участвует хотя бы в четырёх тройках. Что можно сказать о пересечениях этих троек?
Подсказка 5
Кроме нашего X, эти тройки должны пересекаться по одному ребёнку! А что можно сказать об их пересечениях со всеми другими тройками? Подумайте, сможем ли мы "убрать" эту конструкцию для перехода?
Будем доказывать, что, если в классе человек и выбрана
различная тройка детей, то найдутся две тройки, пересекающиеся ровно
по
ребёнку, либо такой конфигурации не существует (для
). Доказывать будем индукцией по
База для верна.
Докажем переход. Предположим, то любые две тройки либо не пересекаются, либо пересекаются по детям. Для каждого ребёнка
посмотрим на количество его участий в различных тройках. Если у всех детей количество участий не превосходит
то всего троек не
больше, чем
(в каждой тройке 3 ребёнка) — противоречие. Значит, найдется ребёнок участвующий хотя бы в
тройках.
Посмотрим на все тройки, в которые входит наш ребёнок. Обозначим множество детей, входящих хотя бы в одну из этих троек через
Если выкинуть выбранного ребёнка из всех этих троек, то по нашему предположению мы получим хотя бы
различные двойки, любые две
из которых пересекаются. Легко проверить, что тогда они все будут пересекаться по одному ребёнку. Причем этот ребёнок не может входить
в другие тройки (если он входит в тройку, в которую не входит первый ребенок, то данная тройка должна пересекаться по
еще одному ребенку с хотя бы
другими тройками из наших старых, что невозможно). Также легко проверить, что ни
один другой ребёнок из
не может входить в тройки, в которые не входит первый ребёнок. То есть ни один из детей
множества
не входит в другие тройки. Пусть в
детей. Выкинем всех этих детей из рассмотрения. Осталось
детей и
тройки. Тогда можно воспользоваться предположением индукции. Переход
доказан.
Ошибка.
Попробуйте повторить позже
Есть чашечные весы и по одной гире весов: 1, 2, 4, …, . Докажите, что можно выкладывать гири по одной на весы в таком порядке,
чтобы порядок, в котором перевешивают левая и правая чаши был любым наперед заданным.
Докажем индукцией по , что можно так выкладывать гири.
База: . Для одной гири, очевидно, верно. Кладем ее на ту чашу, которая должна перевесить.
Переход: Предположим, что задача доказана для . Докажем для
. Назовем алгоритмом заранее известную последовательность
перевешивания чаш, в соответствии с которой мы должны выкладывать гири. Первым шагом положим гирю веса 1 на чашу, которая
должна перевесить на первом шаге алгоритма.
Теперь представим, что весы сейчас находятся в равновесии (забудем про гирю веса 1), а веса всех оставшихся гирь деленные на 2, то
есть 1, 2, 4, …, . Будем выкладывать гири по предположению индукции в нужном порядке, в соответствии с оставшимся алгоритмом
(его первый шаг мы уже выполнили).
Докажем, что получающаяся последовательность перевешивания чаш (вспомнили про гирю веса 1 и вернули все исходные веса
оставшихся гирь) соответствует алгоритму, то есть если чаша перевешивала, когда мы использовали оставшиеся гири и считали их вес вдвое
меньшим, то чаша будет перевешивать и в реальной ситуации. Предположим, что когда мы вспомнили про первую гирю и вернули веса
оставшимся, чаша, которая перевешивала, перестала перевешивать (или весы оказались в равновесии, или перевешивает другая чаша).
Когда мы вернули веса (обратно удвоили) последовательность перевешивания чаш не изменилась. То есть чаша перестала
перевешивать тогда, когда на одну из чаш добавили гирю веса 1. Но такого не может быть, так как до добавления этой гири
веса двух чаш были четными (используются только гири весов 2, 4, …, ), то есть отличались между собой хотя бы
на 2, тогда после добавления гири веса 1 весы не могли прийти в равновесие, а тем более начать перевешивать другая
чаша.
Следовательно, выложили гири в соответствии с алгоритмом. Переход доказан.