Графы и турниры → .06 Подвешивание, ранжирование, упорядочивание в графах
Ошибка.
Попробуйте повторить позже
Степень всех вершин графа не меньше , причем в нем нет циклов длины 3, 4 и 5. Докажите, что в нем найдутся
вершин, никакие
две из которых не соединены между собой.
Подвесим граф за вершину Для каждой вершины определим её глубину — наименьшую длину пути до этой вершины из
Пусть
смежна с
Тогда пусть, кроме
вершина
соединена с
Тогда покажем, что все вершины образуют независимое множество. Пусть это не так и
смежно с
Тогда
образуют цикл длины 5, что противоречит условию. Остаётся заметить, что вершин хотя бы
что и требовалось
доказать.
Ошибка.
Попробуйте повторить позже
Докажите, что граф является двудольным тогда и только тогда, когда в нём нет нечётных циклов.
Пусть граф двудольный. Тогда в каждом цикле доли чередуются, причём начинаем и заканчиваем мы в одной и той же доле. Значит, цикл имеют чётную длину.
Теперь пусть все циклы имеют чётную длину. Будем считать граф связным. Подвесим граф за вершину Для каждой вершины
определим её глубину — наименьшую длину пути до этой вершины из
Пусть первая доля состоит из всех вершин чётной глубины, а
вторая — из вершин нечётной глубины. Предположим, что внутри одной доли между вершинами
и
возникло ребро. Тогда по
построению между
и
есть путь
чётной длины, а между
и
путь
также чётной длины. Тогда
образуют цикл
нечётной длины, противоречие.
Ошибка.
Попробуйте повторить позже
В связном графе 2022 ребра и нет циклов. Докажите, что его рёбра можно разбить на 1011 непересекающихся пар так, чтобы рёбра в одной паре имели общую вершину.
Связный граф, в котором нет циклов, — это дерево. Покажем по индукции, что в дереве с вершиной рёбра можно разбить на
пары способом из условия. База
очевидна. Теперь пусть любое дерево на
вершине можно так разбить.
Покажем, что и дерево на
вершине тоже можно разбить. Подвесим граф за вершину
Для каждой вершины
определим её глубину — наименьшую длину пути до этой вершины из
Пусть
— вершина наибольшей глубины.
Тогда
— висячая вершина, поскольку иначе мы можем пойти ещё ниже. Пусть
соединена с
Допустим, из
вниз идёт ещё какое-то ребро в вершину
Заметим, что
также вершина наибольшей глубины, поэтому она также
висячая. Давайте удалим вершины
и
, а как пару рёбер возьмём
и
Тогда граф остался связным, и можно
применить предположение индукции. Если же из
вниз ребро идёт только в
то удалим вершины
и
а в качестве
ребёр возьмём рёбра из
Граф снова останется связным, по индукции искомое разбиение существует, что и требовалось
доказать.
Ошибка.
Попробуйте повторить позже
В стране 1993 города, и из каждого выходит не менее 93 дорог. Известно, что из каждого города можно проехать по дорогам в любой другой. Докажите, что это можно сделать не более, чем с 62 пересадками. (Дорога соединяет между собой два города.)
Рассмотрим граф, в котором вершинами будут города, а ребрами — дороги. Подвесим граф за вершину Для каждой вершины
определим её глубину — наименьшую длину пути до этой вершины из
Назовём уровнем множество вершин одной глубины. Заметим,
что вершина глубины
может быть соединена ребром только с вершинами глубин
или
так что если глубины вершин
отличаются хотя бы на 3, то у них нет общих соседей. Предположим, что есть вершина
глубины более чем 63. Тогда рассмотрим
вершины
где глубина будет
Каждая из этих вершин имеет степень хотя бы 93, причём их соседи не пересекаются, так что всего вершин
хотя бы
противоречие. Значит, из
до любой другой вершины можно добраться с не более чем 62 пересадками. Из
независимости выбора
получаем требуемое в условии.
Ошибка.
Попробуйте повторить позже
В графе степени всех вершин равны и между любыми двумя вершинами существует путь длиной не более
Какое наибольшее число
вершин может быть в этом графе?
Рассмотрим вершину Она соединена с тремя вершинами
и
Получается, что все остальные вершины должны быть
соединены с какой-то из вершин
иначе между ними и
не будет пути длиной не более
Вершины
могут быть соединены
суммарно не более чем с
вершинами помимо
Значит, всего не более
вершин. Пример на
вершин представлен
ниже:
Ошибка.
Попробуйте повторить позже
В стране из каждого города выходит не более дорог. Также известно, что между любыми двумя городами существует путь, проходящий
не более чем по двум другим городам. Докажите, что в этой стране не более
городов.
Подсказка 1:
Подвесим наш граф за какую-нибудь вершину. Сколько тогда "уровней" может быть в таком подвешенном графе?
Подсказка 2:
Всего у такого графа будет не более 4 "уровней". На первом уровне у нас, очевидно, только 1 вершина. Сколько тогда вершин может быть на 2 уровне? А на 3? А на 4?
Подсказка 3:
Сколько максимум ребер может вести из одной вершины на втором уровне в вершину на третьем? Может ли тогда на третьем уровне быть сильно больше вершин, чем на втором?
Представим страну как граф, где вершины — города, а ребра — дороги между городами.
“Подвесим” наш граф за какую-либо вершину. На первом уровне у нас будет только одна вершина, за которую мы подвешиваем. На втором уровне у нас будут все вершины, в которые можно попасть из вершины на первом уровне. На третьем уровне будут все вершины, в которые можно попасть из вершин второго уровня, которых нет на предыдущих двух уровнях. На четвертом уровне будут все вершины, в которые можно попасть из вершин третьего уровня, которых нет на предыдущих трех уровнях.
Докажем, что все вершины лежат на этих уровнях. Пойдем от противного, пусть существует такая вершина, что
не принадлежит ни одному из этих
уровней. Но тогда путь из вершины, за которую мы подвешивали наш граф, до
этой вершины будет иметь более
промежуточных городов (потому что, по факту, на наших четырех уровнях лежат все
вершины, до которых можно добраться из выбранной не более чем через
промежуточных города). Противоречие с
условием.
Теперь посчитаем, какое наибольшее количество вершин может быть в нашем подвешенном графе. На первом уровне находится только
одна вершина. На втором уровне может находиться не более вершин, т.к. из вершины на первом уровне выходит не
более
ребер. Из каждой вершины на втором уровне на третий уровень уходит не более
ребер, поскольку одно ребро
уходит на первый уровень. Т.е. на третьем уровне вершин не более чем в
раза больше, чем на втором, или же не более
Аналогично вершин на четвертом уровне больше, чем на третьем, не более чем в
раза, т.е. не более
Тогда в сумме у нас не более
вершины в графе. На языке задачи получаем, что в стране не более
городов.
Ошибка.
Попробуйте повторить позже
В некоторой стране городов. Каждый из них связан двусторонним авиасообщением с тремя другими городами. При этом из любого
города можно добраться в любой другой, возможно, с пересадками. Вася хочется добраться из города А в город Б. Какого наименьшего
числа перелётов ему гарантированно хватит?
Подсказка 1
Будем считать города вершинами, а авиалинии - рëбрами. Рассмотрите произвольную вершину А и попробуйте исходя из условия грубо оценить, сколько надо пройти рëбер, чтобы дойти из А до вершины, самой отдалëнной от неë.
Подсказка 2
Попробуйте подвесить граф за вершину А и посмотреть, что получится.
Подсказка 3
Подумайте, сколько минимум вершин может находиться суммарно на трëх уровнях, идущих подряд? А сколько минимум вершин может на двух первых и двух последних уровнях?
Перед нами схема авиалиний страны, в которой, чтобы добраться из города в город
не хватит
перелёта. Основная часть схемы
состоит из повторяющихся блоков по
города, см. города
и
Для того, чтобы попасть из города в город
нужно
перелёта, затем из города
в город
по
перелёта за
каждые
города, то есть
перелётов, и ещё
перелёта, чтобы добраться из города
в город
итого, минимум
С другой стороны, перелёта всегда достаточно, чтобы добраться от любого города до любого.
Чтобы доказать это, поместим какой-нибудь начальный город на уровень соединённые с ним (будем называть их соседними) города —
на уровень
их оставшихся соседей — на уровень
и так далее. Каждый раз на уровень
мы помещаем города, соседние с
городами на уровне
если им ранее не сопоставлен другой уровень. (Приведённый выше пример нарисован как раз по этому
принципу).
Каждый город на уровне может быть соединён только с городами на уровнях
и
Это значит, что на каждых трёх подряд идущих уровнях в сумме хотя бы города. Кроме того, на двух первых уровнях не менее
городов, как и на двух последних.
Это означает, что у нас не может быть более
уровней, то есть максимально возможный номер уровня равен Но номер уровня — это и есть количество перелётов,
необходимое, чтобы добраться в город на этом уровне из начального города. Поскольку в качестве начального города
можно выбрать любой из
городов, это значит, что от любого города до любого можно добраться не более, чем за
перелёта.
Ошибка.
Попробуйте повторить позже
Докажите, что вершины дерева можно покрасить правильным образом в цвета.
Подвесим дерево за вершину Дальше заметим, что между вершинами одного уровня (уровень определяется длиной минимального
простого пути из
в вершину) не может быть ребер, так как у нас дерево и в нём нет циклов. Дальше покрасим в
цвет вершины
четных уровней, а в
цвет четных.
Ошибка.
Попробуйте повторить позже
В группе из 80 человек некоторые знакомы друг с другом (знакомства взаимны). Известно, что в группе есть человек, который знает ровно 1 из оставшихся, человек, который знает ровно 2 из оставшихся, ..., человек, который знает ровно 54 из оставшихся. Докажите, что в группе есть три человека, каждые два из которых знакомы.
Источники:
Подсказка 1
Зачастую в задачах на знакомства, на какие-то дороги, где нам даны количества "соединений", удобнее всего начинать с объекта, у которого их больше всех) Попробуем рассмотреть всех знакомых человека А, у которого их 54, что можно о них сказать?
Подсказка 2
Чего же мы хотим добиться от такого множества? Найти человека B в нём, у которого с A точно есть общий знакомый. Но чтобы найти такого B, нужно хотя бы понимать, сколько у него знакомых. Но далеко не обо всех людях мы знаем количество их друзей :( Значит, попробуем сократить множество, в котором будем искать такого B. О скольких людях в множестве друзей A мы точно знаем количество знакомых?
Подсказка 3
В множестве знакомых A максимум 26 человек, у которых мы не знаем количество друзей, значит, есть как минимум 28 человек, про которых мы можем что-то сказать. Какого тогда человека мы можем "выцепить" оттуда, чтобы, наконец, найти B из подсказки 2?
Подсказка 4
Среди них есть человек B, у которого хотя бы 28 знакомых! Осталось лишь доказать, почему же у B и A обязательно есть общий знакомый из всех, при условии, что они знакомы между собой?)
Посмотрим на человека , который знает ровно
из оставшихся. Из них максимум
людей, про количество знакомых у которых в
условии ничего не сказано. Осталось как минимум 28 человек, про количество знакомых которых сказано в условии. Среди них тогда
найдётся человек
, количество знакомых которого хотя бы
У кроме
есть ещё
знакомых, а у
, кроме
ещё
Поскольку
то у
и
есть хотя бы один
общий знакомый
Тройка
и есть искомая тройка человек.
Ошибка.
Попробуйте повторить позже
В стране городов, некоторые города соединены дорогами, по которым можно двигаться в обе стороны. Известно, что в этой стране нет
циклического маршрута. Докажите, что можно выбрать
городов так, чтобы каждый выбранный город был соединен не более чем с
одним из остальных выбранных.
Построим граф, вершинами которого будут города, а рёбрами — дороги. Заметим, что по условию в графе нет циклов. То есть он состоит из нескольких деревьев.
Будем доказывать индукцией по , что в дереве на
вершинах можно выбрать не меньше
вершин так, чтобы каждая
выбранная вершина была соединена не более чем с одной из остальных выбранных. База для
действительно
верна. Пусть утверждение верно для
. Докажем для
. Подвесим дерево за вершину и выберем
самую низкую висячую вершину из всех. Рассмотрим её предка. Если он соединён с еще хотя бы одной висячей вершиной,
то выкинем его и все висячие вершины, являющиеся его соседями. В оставшемся дереве по предположению индукции
можно выбрать хотя бы
вершин с сохранением условия. Теперь достаточно добавить к ним всех выкинутых соседей
предка.
Если же у предка висячей вершины нет других висячих соседей, то можно считать, что у предков всех самых низких висячих вершин
есть ровно один висячий сосед (сами эти вершины). Вернёмся к нашей висячей вершине. Если у её предка есть предок, то выкинем его и всё
его поддерево. В оставшемся дереве снова выберем не менее вершин и добавим к ним все выкинутые вершины, кроме предка предка
исходной висячей вершины.
Наконец, если предка предка не существует, то наше дерево состоит всего из 2 вершин, соединённых ребром, тогда можно взять его целиком.
Для решения задачи осталось лишь выбрать не менее вершин из каждого дерева, а затем, если вершин получилось больше чем
нужно, выкинуть лишние.
Ошибка.
Попробуйте повторить позже
В графе вершин, причём степень каждой не менее трёх. Докажите, что в графе есть цикл длины не более
Подсказка 1.
Рассмотрим какую-нибудь вершину А и попробуем найти цикл с ней. Подвесим граф за А, назовём уровнем множество вершин, находящихся на одинаковом расстоянии от А. Что тогда можно сказать про рёбра между вершинами одного уровня?
Рассмотрим какую-нибудь компоненту связности этого графа и докажем, что там есть нужный нам цикл. Пусть в ней есть вершина Она
соединена как минимум с тремя вершинами. Если эти вершины соединены между собой или какие-то две из них соединены с одной и той же
вершиной, отличной от
мы получим нужный цикл. Значит, эти вершины соединены минимум с
другими вершинами. Аналогично
эти вершины соединены с другими
вершинами, либо мы нашли нужный цикл и так далее. Заметим, что в процессе рассуждений
получается дерево. Если мы таким образом построим
уровней, то в графе будет хотя бы
вершин, что явно больше
Значит, не ниже чем на
уровне найдутся две вершины, которые либо соединены между собой,
либо соединены с одной и той же вершиной. Но тогда есть цикл длиной меньше чем
включающий эти две вершины и
Ошибка.
Попробуйте повторить позже
Степень любой вершины графа не превосходит Докажите, что его можно покрасить в
цвет правильным образом.
Приведём алгоритм раскраски. Подвесим граф за какую-нибудь вершину. Суммарно на первом и втором уровнях не более
вершины, так как степень вершины, за которую подвесили, не больше
Раскрасим все вершины
и
уровней в разные
цвета.
Далее рассмотрим какую-нибудь вершину третьего уровня. Она соединена не более чем с вершинами второго уровня, а значит мы
сможем её покрасить в какой-нибудь цвет, не нарушая правильности. Покажем, что аналогично мы можем закрасить все вершины
третьего уровня. Предположим, что это не так. Пусть мы дошли до некоторой вершины
третьего уровня, для которой не
осталось цветов. Но такого не может быть, поскольку она соединена суммарно с не более чем
вершинами из третьего и
второго уровней. Следовательно, третий уровень мы сможем закрасить. Аналогично закрасим остальные уровни. Что и
требовалось.
Ошибка.
Попробуйте повторить позже
Докажите, что в дереве с вершиной степени 10 найдется 10 висячих вершин (то есть вершин степени 1).
Возьмём вершину степени 10 и поместим на первый уровень. На второй уровень поместим всех соседей
. На третий уровень поместим
всех соседей соседей
, ещё не появившихся на картинке, и так далее. У нас образуется 10 “веточек”, началами которых будут соседи
.
Посмотрим, чем заканчивается каждая веточка, то есть на самые низкие вершины веточки. Из них и выходит по одному ребру: только
наверх, рёбра не могут идти на тот же уровень или вниз. При этом в каждой веточке есть хотя бы одна самая низкая вершина, что нам и
даёт искомые 10 вершин.
Ошибка.
Попробуйте повторить позже
В стране городов, некоторые из которых соединены авиалиниями. Беспосадочный перелёт из
в
назовём централизующим, если
из
можно в большее, чем из
число городов долететь без пересадки. Какое наибольшее число городов может насчитывать
авиамаршрут, все перелёты на котором централизующие?
Источники:
Подсказка 1
Рассмотрите маршрут, проходящий через города A₁, A₂, ... , Aₘ. Воспользуйтесь тем, что каждый перелет — централизующий.
Подсказка 2
Так как перелеты централизующие, значит, каждый раз число доступных городов увеличивалось. Исходя из этого оцените m.
Подсказка 3
При некотором значении m между A₁ и Aₘ будет маршрут, что даст противоречие. Получится оценка сверху на m, останется подобрать пример.
Через где
— произвольный город, обозначим число городов, соединённых беспосадочными авиалиниями с
Будем рассматривать
авиамаршрут, который проходит последовательно через города
и все перелёты на котором централизующие. Ясно, что
тогда
Равенство невозможно, поскольку имело бы своими следствиями взаимоисключающие равенства
и
так как
еще соединена с
Допустим, что и
Тогда
то есть город
соединён либо с
либо с
Но
соединён с
и
а
— с
и
Наконец, предположим, что и
Тогда
соединён с
соединён с
и
Получается,
что город
не соединён ни с
ни с
а тогда равенство
невозможно. Итак,
Приведём пример
системы авиалиний, для которой все перелёты на маршруте, проходящем последовательно через города
централизующие. Пусть города
и
(
) соединены, если выполнено хотя бы одно из следующих трёх
условий:
Ошибка.
Попробуйте повторить позже
В стране городов, некоторые из которых соединены друг с другом дорогами. Из каждого города выходит хотя бы
дорог. Докажите,
что существует несамопересекающийся циклический маршрут, состоящий из не более чем
городов.
Подсказка 1:
Будет логично пойти от противного, предположить, что нет циклов длины меньше 7.
Подсказка 2:
Чтобы работать с отсутствием маленьких циклов было удобнее, можно подвесить граф за какую-то вершину. Тогда получится сделать некоторые оценки на количество вершин на первых уровнях. Возможно, они приведут к оценке на количество вершин в графе.
Подсказка 3:
Но если подвесить за вершину степени 5, то ничего хорошего не получается. Быть может, получится найти вершину со степенью не меньше 6?
Подсказка 4:
В этом вам поможет лемма о рукопожатиях.
Рассмотрим граф, у которого вершины являются городами, рёбра — дорогами. Заметим, что в нашем графе есть вершина степени хотя бы
(так как в графе не может быть нечетное число вершин нечетной степени). Подвесим граф за эту вершину. Далее будем располагать
вершины по уровням. Предположим, что нет циклов длины не более
На нулевом уровне у нас одна вершина, тогда на первом хотя бы
на втором — хотя бы
так как из вершин первого уровня ребра не могут вести в одну и ту же вершину второго уровня, а
также в вершины предыдущих уровней (включая первый) по нашему предположению. По аналогичным соображениям
на третьем уровне хотя бы
вершин. Но тогда в нашем графе уже хотя бы
вершин —
противоречие.
Ошибка.
Попробуйте повторить позже
В стране некоторые города соединены авиалиниями, причем из города в город
нельзя попасть, сделав менее
пересадок.
Докажите, что все авиалинии можно распродать
авиакомпаниям таким образом, что любой маршрут из
в
будет проходить по
линиям, принадлежащим всем
авиакомпаниям.
Подсказка 1.
Введём граф авиалиний и подвесим его за вершину A. Назовём уровнем множество вершин, находящихся от А на одинаковом расстоянии. Что тогда можно сказать про уровни в этом графе?
Подсказка 2.
Если вершина А на нулевом уровне, то из условия следует, что В хотя бы на одиннадцатом. Теперь осталось распределить авиалинии по компаниям, чтобы выполнилось условие задачи.
Подсказка 3.
Рёбра в графе есть только между соседними уровнями, причём любой путь от А до В обязательно проходит через уровни с нулевого по одиннадцатый. Значит, можно сделать так, чтобы каждая компания отвечала за фиксированный переход между двумя уровнями.
Рассмотрим граф, у которого вершинами являются города, ребрами — авиалинии. Подвесим граф за вершину остальные распределим
по уровням. По условию вершина
окажется хотя бы на расстоянии
от
То есть в нашем графе хотя бы
уровней (включая
нулевой). Теперь все рёбра между нулевым и первым уровнем отдадим первой авиакомпании, все рёбра между первым и вторым
уровнями — второй авиакомпании, …, все рёбра между
и
уровнями — одиннадцатой авиакомпании. Остальные
рёбра распределим произвольно. Теперь очевидно, что любой маршрут между
и
будет проходить по рёбрам всех
авиакомпаний.
Ошибка.
Попробуйте повторить позже
В цветочном городе живёт некоторое число коротышек. В первый день один из них заболел. Если коротышка болеет, то к нему приходят все его здоровые друзья и заражаются (то есть становятся больными в следующий день). Если коротышка один день болел, то он выздоравливает на следующий день, и более того, получает иммунитет на этот день. Коротышка с иммунитетом может навещать друзей без риска заражения. Может ли так случиться, что эпидемия будет продолжаться бесконечно долго?
Подсказка 1.
Введём граф дружбы. В нём выделена одна вершина А — коротышка, который заболел первым. Попробуем подвесить граф за неё. Как тогда будет распространяться эпидемия?
Рассмотрим граф, вершины которого соответствуют коротышкам, а любые два друга соединены рёбрами. Назовём расстоянием между
вершинами графа (коротышками) наименьшее количество рёбер в соединяющей их цепочке. Пусть несколько коротышек заболели в
первый день (очаг эпидемии). Тогда на следующий день заболеют коротышки, находящиеся на расстоянии от очага, во
второй — на расстоянии 2 и только они и так далее. То есть в
-й день у коротышек, находящихся на расстоянии
от
очага, иммунитет, и это означает, что волна эпидемии будет распространяться всё дальше от очага, и всё новые и новые
коротышки будут заболевать. Но коротышек конечное число. Поэтому в какой-то момент все переболеют по разу и эпидемия
закончится.
Не может
Ошибка.
Попробуйте повторить позже
В некоторой стране из каждого города выходит не менее дорог в другие города. Оказалось, что от Москвы до Владивостока нельзя
проехать, посетив менее
других городов. Докажите, что в этой стране хотя бы
городов.
Подсказка 1.
Рассмотрим граф дорог и подвесим его за Москву. Назовём уровнем множество вершин, находящихся от Москвы на одинаковом расстоянии. Тогда уровней хотя бы десять.
Как обычно рассмотрим граф, соответствующий данной задаче. Посмотрим на кратчайший путь между Москвой и Владивостоком. По
условию в нем хотя бы вершин (включая концы). Тогда можно выделить в этом пути
вершины, попарные расстояния между
которыми хотя бы
(вершины кратчайшего пути, между которыми хотя бы
вершины, не могут быть соединены путем длины меньше
). Но тогда для этих
вершин выходящие ребра не могут совпадать и вести в одну и ту же вершину (иначе между какими-то из этих
вершин расстояние будет не больше
). Тогда есть хотя бы
города.
Ошибка.
Попробуйте повторить позже
Пете необходимо спаять электрическую схему, состоящую из чипов, соединённых между собой проводами (один провод соединяет два
различных чипа; два чипа может соединять не более одного провода), при этом из одного чипа должно выходить
проводов, из
одного —
из одного —
из двух — по
из трёх — по
из одного —
из одного —
Может ли Петя спаять такую
схему?
Подсказка 1
Так, у нас в задаче нужно какие-то объекты между собой соединять и проверить, получится ли некоторое количество связей у каждого... Что это может означать в контексте графа?
Подсказка 2
Верно! Это же степени вершин! А если посмотреть на вершину степени 9, когда в графе 10 вершин... Что-то у нее не очень много вариантов для выбора соседей... А что по поводу вершин степени 1?
Подсказка 3
Но ведь эти вершины не дают нам никакой информации, с ними все ясно, может их вообще выкинем? Тут мы уже все придумали идейно, осталось аккуратно рассмотреть остальные вершины!
Первое решение. Каждому чипу соответствует вершина в графе. Тогда в нашем графе рёбер и есть вершина степени
которая
соединена со всеми. Но тогда её можно выкинуть (уменьшив степени всех на
) — существование графа без этой вершины
эквивалентно существованию искомого. Получим набор степеней
Вершины степени
можно не
учитывать, поэтому теперь вершина степени
соединена со всеми, выкинем её и получим
Повторим
действие с вершиной степени
имеем
а такого графа не существует, значит, и искомого не могло
быть.
Второе решение. Аналогично первому решению введём граф. Заметим, что если — степени вершин некоторого графа
без петель и кратных рёбер, то для каждого
выполнено неравенство
Действительно, все рёбра, выходящие из вершин с номерами от до
делятся на два типа:
идущие в вершины с номерами от
до
— таких не болыше
идущие в вершины с номерами от
до
— таких не больше
но каждое мы можем посчитать по два
раза.
В задаче нас спрашивают, существует ли граф со степенями вершин Предположим, что он существует, и
воспользуемся доказанным утверждением для первых пяти вершин:
противоречие.
нет
Ошибка.
Попробуйте повторить позже
В стране городов, каждые два города соединены (двусторонними) авиалиниями, цены всех перелетов попарно различны (для любой
пары городов цена перелета «туда» равна цене «обратно»). В каждом городе находится турист. Каждый вечер все туристы переезжают:
богатые туристы — по самой дорогой, бедные — по самой дешевой линии, ведущей из соответствующего города. Через
дней оказалось,
что в каждом городе снова по одному туристу. За это время ни один турист не посетил никакой город дважды. При каком наибольшем
такое возможно?
Подсказка 1.
Сначала попробуем построить оценку. Можно считать, что богачей хотя бы половина. Рассмотрим ориентированный граф, в котором будем проводить из вершины только самое дорогое ребро. Тогда богачи движутся только по ребрам этого графа.
Ясно, что во время путешествий никакие два богатых туриста (или два бедных) не могли оказаться в одном городе. С другой стороны, условие задачи не запрещает находиться в одном городе одновременно бедному и богатому туристу, важно лишь, чтобы в начальный и в конечный момент в каждом городе было по одному туристу.
Допустим, что среди туристов имеется (или более) «богачей». Нарисуем граф: вершины — это города, из каждого города проведем
самый дорогой выходящий путь. Тогда этот граф представляет собой лес, в каждом дереве которого все ребра направлены к корню,
за исключением единственного ребра, выходящего из корня, — это ребро в дереве как бы двустороннее. Возьмем богача,
который расположен ближе всего к корню своего дерева. Этот богач будет в течение
ходов самым близким к корню.
Значит, он проедет по городам, в которых еще не было других богачей. Это может быть только если граф — это путь из
вершин, богачи занимают первые
вершин этого пути (т. е. половину) и гуськом движутся по этому пути в сторону второй
половины. Отсюда следует, что богачей не может быть больше
а также что количество переездов тоже не превосходит
Тогда бедных туристов тоже и они двигаются по аналогичному «бедному» пути, причем в начальный момент они занимают всю
вторую половину «богатого» пути. Эти пути не имеют общих звеньев, и при этом движение бедняков таково, что с каждым ходом они
должны освобождать от своего присутствия очередную вершину второй половины богатого пути, смещаясь гуськом в первую половину.
Тогда движение туристов может происходить, например, следующим образом.
Обозначим города Допустим, что путь
составлен из самых дорогих авиалиний, для определенности пусть цена перелета равна
рублей. А «бедный путь»
пусть сначала проходит по городам с большими четными номерами, потом — по городам с большими нечетными, а далее — с малыми:
сначала с четными, потом с нечетными:
Цены этих авиалинии пусть убывают от до
рубля при движении вдоль этого пути. Цены остальных авиалиний назначим
произвольно в диапазоне от
до
рублей.
При