Задача 061

Дано нечетное число k>1 и натуральное n>k . B компании из n школьников среди любых k школьников найдется школьник, знакомый с остальными k-1 школьниками. Найдите все значения n и k, при которых можно утверждать, что в такой компании всегда найдется школьник, знакомый со всеми. Знакомства взаимные.

Подсказка

Пусть n четно. Покажем, что можно познакомить между собой n школьников так, что никакой школьник не будет знаком со всеми остальными, но среди любых k из них найдется школьник, знающий оставшихся k-1 школьников. Разобьем школьников на пары и познакомим их так, чтобы школьники из одной пары были незнакомы между собой, а из разных пар — знакомы.

Решение

Тогда и только тогда, когда n нечетно. Решение. Пусть n четно. Покажем, что можно познакомить между собой n школьников так, что никакой школьник не будет знаком со всеми остальными, но среди любых k из них найдется школьник, знающий оставшихся k-1 школьников. Разобьем школьников на пары и познакомим их так, чтобы школьники из одной пары были незнакомы между собой, а из разных пар — знакомы. Выберем любых k школьников. Поскольку компанию из нечетного числа школьников нельзя разбить на пары, среди них найдется такой, у которого незнакомый ему школьник в эту группу из k человек не вошел. Поэтому этот школьник знает всех остальных k-1 школьников. Таким образом, при четном n искомый способ знакомства существует.

Пусть n нечетно. Достаточно показать, что если нет школьника, который знает всех, то условие задачи не выполнено. В компании найдется школьник Вася, которому незнакомы хотя бы два других школьника (иначе компания должна разбиться на пары незнакомых школьников, что при нечетном n невозможно). Покажем, что в этой компании не будет выполнено условие о группе из k школьников. Будем набирать эту группу постепенно. Сначала поместим в нее Васю и каких-то двух незнакомых ему школьников. На каждом шаге будем добавлять в группу двух еще не добавленных в нее незнакомых друг с другом школьников. Поскольку в каждый момент времени количество школьников в группе будет нечетным, то либо на какомто шаге в группе окажется ровно k школьников (и тогда по построению у каждого в группе будет незнакомый ему школьник из группы), либо в какой-то момент окажется, что среди оставшихся школьников все попарно знакомы. Во втором случае у любого оставшегося школьника есть незнакомый ему школьник из группы. Поэтому, если мы доберем группу до k школьников как угодно, то у любого школьника в группе снова будет незнакомый школьник среди остальных школьников группы. Итак, снова найдена группа из k школьников, среди которых нет такого, который знает всех остальных из группы.

Задача 062

B стране n городов, один из которых является столицей. Между некоторыми парами городов налажено авиасообщение. Расстоянием между городами называется минимальное количество перелетов, которые необходимо совершить, чтобы добраться от одного города до другого. Правительство хочет закрыть авиасообщение между некоторыми парами городов, но чтобы расстояние от столицы до любого другого города не изменилось. Известно, что существует нечетное количество способов, которыми правительство может это сделать. В том числе считается способ, в котором не закрывается ничего.
Докажите, что нельзя, стартовав в некотором городе и совершив нечетное число перелетов, вернуться обратно в него.

Подсказка

Подвесим граф за вершину-столицу С. Вспомним, что вершины i-го яруса определяются в точности как те вершины, расстояние от которых до C равно i.

Решение

Введём граф, в котором вершины — города, рёбра — наличие авиасообщения. Подвесим граф за вершину-столицу С. Вспомним, что вершины i-го яруса определяются в точности как те вершины, расстояние от которых до C равно i. В таком графе рёбра могут быть либо внутри одного яруса, либо между ярусами с номерами, отличающимися на 1. Мы рассматриваем множества ребер, при удалении которых сохраняется ярус каждой вершины в нашем графе, будем называть их интересными. Если некоторое ребро v соединяет две вершины одного яруса, то при включении или исключении v интересность множества ребер не меняется. Таким образом, все интересные множества разбиваются на пары, что противоречит условию. Следовательно, в графе нет ребер, соединяющих вершины одного яруса. Тогда в любом цикле ярусы соседних вершин отличаются на 1 , тем самым они имеют разную четность. Значит, любой цикл в данном графе имеет четную длину, что и требовалось.

Задача 063

В турнире по бадминтону участвовало 16 спортсменов. Каждые двое сыграли не более одной игры, при этом ничьих не было. После окончания турнира оказалось, что все игроки одержали различное количество побед. Докажите, что все участники потерпели различное количество поражений.

Подсказка

На турнире можно одержать от 0 до 15 побед. Так как это ровно 16 вариантов, то каждый из этих вариантов встретился у одного из спортсменов.

Решение

На турнире можно одержать от 0 до 15 побед. Так как это ровно 16 вариантов, то каждый из этих вариантов встретился у одного из спортсменов. Следовательно, было сыграно 0+1+2+\ldots+15=15 \cdot 14 / 2 игр, а это все возможные игры, которые могли быть сыграны. Таким образом, каждый участник сыграл 15 игр, у всех участников разное число побед, поэтому и разное число поражений.

Задача 064

Докажите, что у любого конечного множества A натуральных чисел существует подмножество B, удовлетворяющее следующим условиям: если b_{1}, b_{2} \in B различны, то ни одно из чисел b_{1}, b_{2} не делится на другое и ни одно из чисел b_{1}+1, b_{2}+1 не делится на другое, а также для любого a \in A найдётся b \in B такое, что или b делится на a, или a+1 делится на b+1.

Подсказка

Рассмотрим двуцветный ориентированный граф, у которого вершинами будут элементы множества A, и от вершины b к вершине a идет синяя стрелка, если b делится на a, и красная, если a+1 делится на b+1.

Решение

Рассмотрим двуцветный ориентированный граф, у которого вершинами будут элементы множества A, и от вершины b к вершине a идет синяя стрелка, если b делится на a, и красная, если a+1 делится на b+1. Тогда мы хотим выбрать независимое подмножество вершин B такое, что в любую вершину множества A \backslash B ведет стрелка из B.

Поделим вершины на три группы: исходные, выбранные и хорошие (вершины будут перемещаться из группы в группу, но никакая вершина на может находиться в двух группах одновременно). Изначально все вершины находятся в группе исходных. Выберем среди них такие, в которые не входит ни одна синяя стрелка и отправим их в группу выбранных. Тогда, в силу транзитивности синих стрелок, в каждую исходную вершину ведет хотя бы одна синяя стрелка из выбранных вершин. Если так случилось, что между выбранными вершинами нет красных стрелок, то, приняв за B множество выбранных вершин, мы решим задачу. Если же красные стрелки есть, то найдем все выбранные вершины, в которые ведет хотя бы одна красная стрелка из других выбранных, и отправим их в группу хороших. После этого, могло оказаться, что в некоторые исходные вершины не идет синей стрелки из выбранных. В этом случае добавим в множество выбранных те вершины из исходных, в которые синие стрелки приходят только из хороших вершин. После этого снова отправим в группу хороших те из выбранных вершин, в которые ведет хотя бы одна красная стрелка из других выбранных. В силу транзитивности теперь уже красных стрелок, в любую хорошую вершину все еще ведет хотя бы одна красная стрелка из выбранных. Будем продолжать такие перемещения (из исходных в выбранные, из выбранных в хорошие). Заметим, что если в некоторый момент мы не смогли уменьшить множество исходных вершин, то задача решена,а так как изначально там конечное число вершин, этот момент обязательно наступит.

Задача 065

Некоторые из 2017 городов страны соединены прямыми двусторонними авиарейсами так, что из каждого города можно добраться до любого другого. Правительство хочет объявить k городов стратегически значимыми так, чтобы из любого города (включая стратегически значимые), совершив ровно один перелет, можно было попасть в стратегически значимый город. При каком наименьшем k это наверняка можно будет сделать?

Подсказка

Очевидно, достаточно разобрать случай, когда граф — дерево (в произвольном связном графе можно выделить дерево, содержащее все его вершины; если k стратегически значимых вершин будет достаточно для этого дерева, их будет достаточно и для исходного графа).

Докажем, что в графе с n \geq 3 вершинами можно указать несколько вершин и выделить из них несколько стратегически значимых так, что каждая выделенная вершина будет смежна с выделенной стратегически значимой, доля стратегически значимых среди выделенных будет не больше 2 / 3 и после удаления выделенных вершин граф останется связным.

Рассмотрим две вершины A и B, путь между которыми содержит наибольшее количество рёбер.

Решение

Ответ. При k=1344. Решение. Введём граф городов и авиарейсов. Для начала приведём пример графа, в котором меньше чем 1344 стратегически значимыми вершинами не обойтись. Пусть в графе имеются вершины A, а также B_{k}, C_{k} и D_{k}, k=1,2, \ldots, 672; для каждого k проведём рёбра между вершиной A и B_{k}, B_{k} и C_{k}, C_{k} и D_{k}. Легко видеть, что этот граф связен. Поскольку вершина D_{1} связана только с вершиной C_{1}, то вершина C_{1} должна быть объявлена стратегически значимой. Кроме того, применяя условие задачи для вершины C_{1} получаем, что либо вершина B_{1}, либо вершина D_{1} должна быть объявлена стратегически значимой. Итак, из вершин B_{1}, C_{1}, D_{1} хотя бы две вершины должны быть стратегически значимыми. Рассуждая аналогично для каждой тройки B_{k}, C_{k}, D_{k}, получаем требуемое.

Докажем теперь, что 1344 стратегически значимыми вершинами можно обойтись. Очевидно, достаточно разобрать случай, когда граф — дерево (в произвольном связном графе можно выделить дерево, содержащее все его вершины; если k стратегически значимых вершин будет достаточно для этого дерева, их будет достаточно и для исходного графа).

Докажем, что в графе с n \geq 3 вершинами можно указать несколько вершин и выделить из них несколько стратегически значимых так, что каждая выделенная вершина будет смежна с выделенной стратегически значимой, доля стратегически значимых среди выделенных будет не больше 2 / 3 и после удаления выделенных вершин граф останется связным.

Рассмотрим две вершины A и B, путь между которыми содержит наибольшее количество рёбер. Пусть X — последняя перед B вершина на пути из A в B. Очевидно, B соединена только с X. Если X соединена с какимито висячими вершинами, кроме B, выделим X и все смежные с ней висячие вершины, а стратегически значимыми среди них объявим X и B. Очевидно, удаление этих вершин не нарушит связности графа, и стратегически значимые составляют среди них не более 2 / 3.

Пусть B — единственная висячая вершина, соединённая с X. Рассмотрим последнюю вершину Y на пути из A в X. Если все отличные от B вершины, путь из которых в A проходит через Y, смежны с Y, можно выделить эти вершины, Y, X и B, а стратегическими среди них объявить X и Y.

Наконец, разберём случай, когда путь из A в Y можно продолжить несколькими путями Y X_{i} B_{i} длины 2 (путями большей длины продолжить не удастся в силу максимальности выбранного выше пути из A в B ). Пусть таких путей k. Тогда нужно выделить все вершины этих путей и все висячие вершины, смежные с Y, а стратегически значимыми объявить Y и все X_{i}. При этом из графа будет удалено не менее 2 k+1 вершин, из которых k+1 стратегически значимых, а \frac{k+1}{2 k+1} \leq \frac{2}{3}.

Будем продолжать эту деятельность, пока от графа не останется огрызок, содержащий не более двух вершин. Если вершин не осталось вообще, то мы объявили стратегически значимыми не более [2 \cdot 2017 / 3]=1344 вершин, и процесс завершился. Если осталась одна вершина, то на предыдущем шаге нашего алгоритма она называлась A и была соединена с вершиной X или Y, которую объявили стратегически значимой, значит, для нее условие выполнено, и стратегически значимыми было объявлено не более [2 \cdot 2016 / 3]=1344 вершин. Если же осталось две вершины, то, во-первых, они смежны, так как граф связности не теряет; во-вторых, одна из этих двух вершин была соединена с вершиной X или Y, объявленной стратегически значимой на предыдущем шаге. Поэтому достаточно объявить стратегически значимой лишь одну из этих двух вершин, чтобы условие выполнялось. Значит, и в этом случае стратегически значимыми будет объявлено не более [2 \cdot 2015 / 3]+1=1344 вершин.

Задача 066

В турнире принимает участие 250 команд, каждая играет с каждой один раз дома и один раз на выезде. Можно ли к каждому матчу приставить одного из 10 судей так, чтобы для каждой команды множества судей, которые будут судить у неё дома, и судей, которые будут судить у неё на выезде, не пересекались?

Подсказка

Сопоставим каждой команде свою пятерку судей.

Решение

Ответ. Можно.

Решение. Сопоставим каждой команде свою пятерку судей. Так как C_{10}^{5}=252>250, такое сопоставление возможно. В качестве судьи матча между командами A и B, где для A матч домашний, выберем любого судью, сопоставленного команде A, но не сопоставленного команде B. Тогда у каждой команды домашние матчи судят только пять судей, которые ей сопоставлены, а выездные матчи — только пять судей, которые ей не сопоставлены.

Задача 067

Дано натуральное число п. Назовём словом последовательность из n нулей и единиц, а маской — последовательность из п нулей, единии, и звёздочек. Слово соответствует маске, если оно получено из неё заменой звёздочек на нули и единицы. Рассмотрим набор масок \mathcal{M}, удовлетворяющий следующим двум условиям:

(1) каждое слово соответствует ровно одной маске, и

(2) для каждой из п позиций найдётся маска из \mathcal{M}, в которой в этой позиции стоит не звездочка.

Найдите наименьшее возможное количество масок в таком наборе \mathcal{M}.

Подсказка

Рассмотрим двудольный граф G, в котором вершинами одной из долей будут номера позиций в слове длины n, вершинами второй из долей будут маски, а рёбрами соединим каждую маску с теми позициями, на которых стоит не звездочка. Пусть доля V_{1} это вершины \{1,2 \ldots, n\}, соответствующие номерам позиций, а доля V_{2} это вершины \left\{u_{1}, u_{2} \ldots, u_{k}\right\}, соответствующие маскам.

Решение

Рассмотрим двудольный граф G, в котором вершинами одной из долей будут номера позиций в слове длины n, вершинами второй из долей будут маски, а рёбрами соединим каждую маску с теми позициями, на которых стоит не звездочка. Пусть доля V_{1} это вершины \{1,2 \ldots, n\}, соответствующие номерам позиций, а доля V_{2} это вершины \left\{u_{1}, u_{2} \ldots, u_{k}\right\}, соответствующие маскам.

Докажем, что в графе G для доли V_{1} выполнено условие леммы Холла. Предположим противное. Рассмотрим в V_{1} минимальное по включению множество A, для которого условие леммы Холла не выполнено. То есть у вершин из A количество соседей меньше, чем |A|, а для любого подмножества B множества A количество соседей у вершин из B хотя бы |B|. Отсюда следует, что у A ровно |A|-1 соседних вершин. Без ограничения общности будем считать, что A=\{1, \ldots, s+1\}, а \left\{u_{1}, \ldots, u_{s}\right\} это соседние вершины множества A. Тогда для множества \{1, \ldots, s\} выполнена лемма Холла. Пусть без ограничения общности существует паросочетание \left(1, u_{1}\right),\left(2, u_{2}\right), \ldots,\left(s, u_{s}\right). Значит, в словах u_{1}, u_{2}, \ldots, u_{s} на 1,2, \ldots, s местах соответственно стоят не звёздочки (пусть без ограничения общности там стоят нули). Рассмотрим маски u_{s+1}, \ldots, u_{k}. По построению в этих масках на местах с 1 по s стоят звёздочки. Так как каждое слово можно получить из масок ровно одним способом, то из масок u_{s+1}, \ldots, u_{k} получаются не все слова. Значит, существует множество слов \underbrace{* * \ldots * *}_{s} \alpha (на первых s позициях стоит что угодно, а затем идёт слово \alpha длины n-s ), которое нельзя получить из масок u_{s+1}, \ldots, u_{k}. Тогда слово \underbrace{1 \ldots 1}_{s} \alpha нельзя получить ни из какой маски. Противоречие.

Следовательно, для доли V_{1} выполнено условие леммы Холла. Рассмотрим любое паросочетание, покрывающее долю V_{1}. Пусть это паросочетание \left(1, u_{1}\right),\left(2, u_{2}\right), \ldots,\left(n, u_{n}\right), а в словах u_{1}, u_{2}, \ldots, u_{n} на 1,2, \ldots, n местах соответственно стоят нули. Тогда чтобы получить слово 11 \ldots 11 нам нужна ещё хотя бы одна маска. Откуда и получаем оценку на n+1.

Задача 068

В комнате находятся 99 человек. Каждую минуту из комнаты выходит человек, у которого количество знакомых среди присутствующих хотя бы на 2 больше, чем у каждого из остальных. Через несколько минут такого человека не нашлось. Какое минимальное количество людей могло остаться к этому моменту в комнате? (Знакомства взаимные.)

Подсказка

Выкидывание вершины с рёбрами не увеличивает степени остальных, потому степень каждого следующего выходящего (на момент выхода) хотя бы на 2 меньше предыдущей.

Решение

Ответ. 51 человек.

Решение: Оценка. Рассмотрим граф с 99 вершинами, рёбра соответствуют знакомствам. Выкидывание вершины с рёбрами не увеличивает степени остальных, потому степень каждого следующего выходящего (на момент выхода) хотя бы на 2 меньше предыдущей. Поэтому их степени не больше 98,96, \ldots 4,2 соответственно. Но удалить вершину степени 2 невозможно, так как есть ещё ненулевые степени, а вершины степени 1 и 0 не подходят по условию. Таким образом, из комнаты выйдет не более 48 человек.

Пример. Пусть человек с номером 1 \leqslant k \leqslant 48 знаком с людьми с номерами от 2 k+1 до 99, других знакомств нет. Уходить они будут по порядку от 1 до 48 . На момент ухода k-го человека: ему не знакомы только k следующих за ним, остальным из этих 48 — хотя бы k+1 следующих и предыдущий, а последним 51 — хотя бы 50 , что тоже не меньше k+2.

Задача 069

В стране 100 городов. Некоторые из них соединены дорогами, причем между любыми двумя городами есть не более одной дороги. Города пронумерованы числами от 1 до 100. Петя совершил 100 путешествий по дорогам страны, каждый раз начиная путешествия в разных городах. Все свои путешествия он осуществляет по следующему правилу. Оказавшись в каком-либо городе A, Петя находит среди всех городов, соединенных с A, город B с наименьшим номером. Если город B уже был посещен в этом путешествии, или из A вообще нет ни одной дороги, путешествие тут же заканчивается в A. B противном случае, Петя перемещается из A в B и продолжает путешествие по этому же правилу. Оказалось, что совершив 100 путешествий, Петя посетил все города страны поровну раз. При каком наибольшем количестве дорог в стране такое возможно?

Подсказка

Рассмотрим город номер 100. Он может быть посещен в двух случаях: 1) мы начали путешествие с него; 2) мы начали путешествие с города i<100 и город i соединен только с городом 100.

Решение

Ответ: 2500.

Решение. Оценка. Рассмотрим город номер 100. Он может быть посещен в двух случаях: 1) мы начали путешествие с него; 2) мы начали путешествие с города i<100 и город i соединен только с городом 100. Предположим, что все города были посещены хотя бы три раза. Тогда есть хотя бы два города, которые соединены только с городом 100 . Но наибольший из таких городов может быть посещен только один раз (когда путешествие начинается в нем). Если все города посещены 1 раз, то в стране вообще нет дорог, что нас не устраивает. Значит, все города посещены ровно два раза. Удалим город 100 и город i, соединенный только с ним. Мы удалили не более 98+1 дорог. Для оставшейся части страны всё ещё верно утверждение, что при путешествиях с началом в каждом из городов, все города посещаются поровну раз, так как города i и 100 посещались ровно 2 раза в путешествиях с началом i и 100. Повторяя такие рассуждения, мы будем удалять пары городов, удаляя не более 97,95, \ldots, 1 дорог. Значит, изначально в стране было не более 1+3+\ldots+99= 2500 дорог. Пример: при i \leqslant 50 город i соединим с городами с номерами хотя бы 101-i. Также соединим попарно города с номерами, большими 50. Тогда начиная в городе i мы перемещаемся в город 101-i и останавливаемся. Значит, все города будут посещены дважды. И количество ребер равно 1+2+\ldots+50+50 \cdot 49 / 2=2500.

Задача 070

B стране n городов, некоторые пары из них соединены дорогами с двухсторонним движением. В некоторых городах построены школы, назовём такие города важными. Оказалось, что 1) из каждого города можно добраться до любого другого; 2) каждый не важный город соединён дорогой с важным городом. Для какого наименьшего k всегда можно закрыть все дороги, кроме некоторых k, на ремонт так, чтобы эти два условия сохранились?

Подсказка

Можно оставить только остовное дерево.

Решение

Ответ: n-1. Решение. Рассмотрим граф, вершинами которого являются города, ребрами — дороги. Понятно, что k \geqslant n-1, в противном случае граф на оставшихся ребрах не будет связным. Докажем, что в этом графе всегда можно выделить остовное дерево, удовлетворяющее условиям. Будем последовательно удалять ребра из графа. Пусть в графе к текущему моменту есть цикл, проходящий по вершинам C_{1} C_{2} \ldots C_{m} C_{1}. Предположим, что мы не можем удалить ребро C_{i} C_{i+1} (считаем, что C_{m+1}=C_{1} ) с сохранением всех условий. Тогда один из городов C_{i} и C_{i+1} должен быть важным, а другой — не важным. Поэтому если мы не можем удалить ни одно из ребер цикла, то в нем чередуются важные и не важные города. В этом случае удалим любое ребро из нашего цикла. Каждый не важный город будет по-прежнему соединен с важным. В какой-то момент в графе не останется циклов, а все условия будут выполнены. Поэтому оставшийся граф дерево, и ребер в нем ровно n-1.