ЗАДАЧИ
problems.ru |
О проекте
|
Об авторах
|
Справочник
Каталог по темам | по источникам | |
|
Задача 66489
УсловиеВ доме из 2n комнат сделали евроремонт. При этом выключатели света оказались перепутанными, так что при включении выключателя в одной комнате загорается лампочка, вообще говоря, в какой-то другой комнате. Чтобы узнать, какой выключатель к какой комнате подсоединён, прораб посылает несколько людей в какие-то комнаты, чтобы те, одновременно включив там выключатели, вернулись и сообщили ему, горела лампочка в их комнате или нет.
Решение
а) Занумеруем все комнаты наборами длины n из нулей и единиц (числами от 0 до 2n−1 в двоичной системе). Обозначим через Ak и Bk множества наборов, у которых на k-м месте стоит соответственно 1 или 0. Для каждого k=1,…,n множества Ak и Bk не пересекаются и вместе составляют всё множество наборов. Рассмотрим следующий алгоритм посылок: в (2k−1)-й раз прораб посылает людей в комнаты с номерами из множества Ak, в (2k)-й раз он посылает людей в комнаты с номерами из множества Bk, k меняется от 1 до n. Всего получается 2n посылок. Пусть лампочка в комнате с номером i включается выключателем в комнате с номером f(i). Если i∈Ak и во время (2k−1)-й посылки лампочка в i-й комнате включилась, то f(i)∈Ak, а если не включилась, то f(i)∈Bk. Аналогично, если i∈Bk и во время (2k)-й посылки лампочка в i-й комнате включилась, то f(i)∈Bk, а если не включилась, то f(i)∈Ak. Таким образом, за (2k−1)-ю и (2k)-ю посылки прораб точно устанавливает k-й разряд номера f(i) для каждого i. Следовательно, после 2n указанных посылок он полностью установит соответствие f. б) Покажем, что за 2n−1 посылок прораб также может установить соответствие f. Пусть первые 2n−2 посылки те же, что в предыдущем пункте. После них прораб для каждого i знает номер f(i) с точностью до последнего знака. Построим специальный граф, соответствующий этому знанию. Вершины графа располагаются в два горизонтальных ряда, каждый из которых соответствует парам P1,P2,…,P2n−1 наборов (номеров комнат), различающихся только в последнем знаке (например, P1={0…0,0…01}). Рёбра графа проходят только от вершин верхнего ряда к вершинам нижнего ряда по следующему правилу: вершина в верхнем ряду, соответствующая паре Ps, соединена с вершиной в нижнем ряду, соответствующей паре Pt, в точности тогда, когда для некоторого i∈Ps прорабу известно, что f(i)∈Pt. В таком графе все вершины имеют степень 2. Следовательно, он разбивается на непересекающиеся циклы, в которых все вершины и рёбра проходятся ровно по одному разу. Зафиксируем для каждого из этих циклов обход, начинающийся в вершине верхнего ряда, и рассмотрим все нечётные ребра во всех этих обходах. Каждое из этих рёбер порождено соответствием i→f(i) в указанном выше смысле. Прораб отбирает множество A всех номеров i, соответствующих выбранным нечетным рёбрам, и в (2n−1)-й раз посылает людей в комнаты с этими номерами (их 2n−1 штук). Покажем, что в результате он полностью установит соответствие f. Пусть i∈A и известно, что f(i)∈Pj. В множестве A есть ровно один номер m из пары Pj. Если во время (2n−1)-й посылки лампочка в i-й комнате загорелась (выключатель в m-й комнате включается), то f(i)=m, в противном случае f(i) есть номер, дополнительный к m в паре Pj. Пусть i∉A и известно, что f(i)∈Pj. В множестве A есть такой номер q, что f(q) тоже лежит в Pj. Во время (2n−1)-й посылки, как уже было сказано, номер f(q) устанавливается, и тогда f(i) есть номер, дополнительный к f(q) в паре Pj. Комментарий. Авторам неизвестно минимальное количество посылок, необходимое для установления соответствия между комнатами и выключателями. Ответб) Да, может. Источники и прецеденты использования |
© 2004-...
МЦНМО
(о копирайте)
|
Пишите нам
|
![]() |
Проект осуществляется при поддержке