Тема Графы и турниры

Эйлеровы графы

Вспоминай формулы по каждой теме
Решай новые задачи каждый день
Вдумчиво разбирай решения
ШКОЛКОВО.
Готовиться с нами - ЛЕГКО!
Подтемы раздела графы и турниры
Решаем задачи

Ошибка.
Попробуйте повторить позже

Задача 1#94489

Пусть G  — сильно связный ориентированный граф, в котором входящая степень каждой вершины равна исходящей степени и не меньше 2.  Докажите, что из него можно удалить рёбра некоторого ориентированного цикла так, чтобы сильная связность сохранилась.

Показать доказательство

Условие задачи эквивалентно тому, что в графе есть эйлеров цикл. Действительно, так как количество входящих и исходящих ребер для каждой вершины равны, то граф разбивается на циклы, а так как граф сильно связен, то объединив циклы в один, склеивая циклы по общей вершине, мы получим эйлеров цикл.

Выделим в нашем эйлеров цикле простой цикл и удалим его, тогда сильная связность не нарушится, ведь степень каждой вершины в графе была хотя бы 2.

Ошибка.
Попробуйте повторить позже

Задача 2#34036

В углах шахматной доски 3× 3  стоят четыре коня: два белых (в соседних углах) и два чёрных. Можно ли за несколько ходов поставить коней так, чтобы во всех соседних углах стояли кони различного цвета?

Показать ответ и решение

Нарисуем граф ходов коня, получится, что кони стоят по циклу и не могут друг “сквозь” друга пройти, следовательно, свой порядок они не изменят.

Ответ: Нет, нельзя

Ошибка.
Попробуйте повторить позже

Задача 3#34037

Можно ли нарисовать 1) открытый конверт, 2) закрытый конверт не отрывая руки.

Показать ответ и решение

С пунктом 1) все просто: это легко сделать, если начать из нижней вершины. А вот в пункте 2) ничего не получается. Действительно ли это невозможно, или мы просто плохо стараемся? Оказывается, невозможно, и доказать это можно так.

Рассмотрим левую нижнюю вершину. Ее степень равна трем, значит, если в какой-то момент мы в нее “вошли”, то “выйдя”, оставим лишь одно ребро. Следовательно, в этой вершине нужно либо начать путь, либо закончить. Однако то же самое работает и для остальных трех вершин, а началом и концом могут быть только две вершины. Противоречие.

Ответ: 1) Можно, 2) нельзя

Ошибка.
Попробуйте повторить позже

Задача 4#35501

Город в плане выглядит как квадрат 3×3  , каждая сторона квартала- квадратика — участок улицы длиной 100 м (включая внешний контур квадрата). Какой наименьший путь придется проделать паровому катку, чтобы заасфальтировать все улицы?

Показать ответ и решение

Рассмотрим граф с вершинами в узлах сетки и ребрами — отрезочками между узлами. Заметим, что в графе есть 8 вершин нечетной степени (по 2 на каждой стороне). Заметим, что как минимум в 6 из них наш маршрут не начинается и не заканчивается. А значит, мы входили в эти вершины столько же раз, сколько и выходили из них. То есть для каждой такой вершины одно из ее ребер было пройдено дважды. Отметим для каждой из наших вершин такое ребро. Заметим, что одно и то же ребро может быть отмечено не более 2 раз (по одному раз для каждого конца). Поэтому мы прошли дважды хотя бы по 3 ребрам. Поэтому длина нашего пути не меньше, чем (12⋅2+ 3)⋅100 =2700  метров.

Теперь приведем пример. Начнем из второго сверху перекрестка на самой правой улице. Сначала обойдем всю границу. Мы вернулись в начальный перекресток. Теперь идем так: влево, вверх, влево, вниз, влево, вниз, вправо, вниз, вправо, вверх, вверх, влево, вниз, вправо, вправо. В итоге как раз получится 2700 метров.

Ответ: 2700

Ошибка.
Попробуйте повторить позже

Задача 5#35502

На ребрах связного графа расставлены стрелки так, что для каждой вершины числа входящих и выходящих рёбер равны. Докажите, что двигаясь по стрелкам, можно добраться от каждой вершины до любой другой.

Показать ответ и решение

Пусть данный граф — G  . Начнем идти из произвольной вершины v
1  . Пусть на очередном шаге мы пришли в вершину v  . Если мы начинали обход с v  , то мы сможем куда-то выйти из v  по ранее не задействованному ребру (так как для каждой вершины число входов равно числу выходов). То есть рано или поздно мы вернемся в v1  . Получили некоторый цикл P1  . Если P1  содержит все ребра графа    G  , то в этот цикл входят и все вершины, а следовательно из любой вершины можно перейти в любую другую. В противном случае, удалив из G  ребра P1  , получим граф G2  . Так как у всех вершин в G  и P1  одинаковое количество входящих и выходящих ребер, то и G2  будет обладать этим свойством. В силу связности G  графы P1  и G2  должны иметь хотя бы одну общую вершину v2  . Теперь, начиная из v2  , построим в G  цикл P2  подобно тому, как построили P1  . Объединим циклы P1  и P2  следующим образом: пройдем часть P1  от вершины v1  до вершины v2  , затем пройдем цикл P2  , затем — оставшуюся часть P1  от v2  до v1  .

Если объединенный цикл опять не содержит некоторое ребро графа G  , то, проделав аналогичные построения, получим еще больший цикл. Так будем делать пок не получим цикл, содержащий все ребра.

Ответ:

Ошибка.
Попробуйте повторить позже

Задача 6#35503

В связном графе все рёбра раскрашены в красный и чёрный цвет. Для каждой вершины количество выходящих красных рёбер равно количеству выходящих чёрных. Докажите, что есть эйлеров цикл, в котором цвета рёбер чередуются.

Показать ответ и решение

Пусть данный граф — G  . Начнем чередующуюся цепь P
 1  из произвольной вершины v
 1  , и будем продлевать ее, выбирая каждый раз новое ребро. Так как степени вершин четные, то, попав в некоторую вершину, мы всегда будем иметь в распоряжении еще не пройденное ребро другого цвета. Таким образом, построение цепи P1  обязательно закончится в вершине v1  , и P1  будет циклом. Если P1  содержит все ребра графа G  , то построен нужный эйлеров цикл. В противном случае, удалив из G  ребра P1  , получим граф G2  . Так как у всех вершин в G  и P1  одинаковое количество выходящих черных и красных, то и G2  будет обладать этим свойством. В силу связности G  графы P1  и G2  должны иметь хотя бы одну общую вершину v2  . Теперь, начиная из v2  , построим в G  цикл P2  подобно тому, как построили P1  . Объединим циклы P1  и P2  следующим образом: пройдем часть P1  от вершины v1  до вершины v2  , затем пройдем цикл P2  , затем — оставшуюся часть P1  от v2  до v1  .

Если объединенный цикл не эйлеров, то, проделав аналогичные построения, получим еще больший цикл. Поскольку число ребер в графах, не попавших в строящийся цикл, то процесс закончится построением чередующегося эйлерова цикла.

Ответ:

Ошибка.
Попробуйте повторить позже

Задача 7#35504

Турист приехал в город и прогулялся по городу. Докажите, что он может вернуться на вокзал, проходя только по тем улицам, которые он проходил нечётное число раз.

Показать ответ и решение

Построим граф, вершинами которого являются перекрестки между улицами, а ребрами — сами улицы. Также условимся, что в нашем графе разрешены кратные ребра (то есть, если турист прошел дважды по одной улице, то этой улице будут соответствовать 2 ребра). Пусть мы начали прогулку в вершине X  , а закончили — в вершине Y  . Оставим в графе только ребра, соответствующие улицам, пройденным нечетное количество раз.

Заметим, что изначально в графе степень всех вершин, кроме X  и Y  была четная (поскольку мы пришли в эти вершины столько же раз, сколько и вышли из них). После выкидывания ребер, которые соответствовали улицам, пройденным четное число раз, у нас степени всех вершин сохранили свою четность. При этом степени X  и Y  остались нечетными. Предположим, что из X  нельзя добраться до   Y  по оставшимся ребрам. Тогда эти вершины лежат в разных компонентах связности. Но тогда в компоненте X  есть ровно 1 вершина нечетной степени, что невозможно.

Ответ:

Ошибка.
Попробуйте повторить позже

Задача 8#35505

Из каждого города в другие города страны ведут ровно 3 дороги. Докажите, что две компании могут так приватизировать эти дороги, что из каждого города будут выходить 2 дороги одной и 1 дорога другой компании.

Показать ответ и решение

Построим граф: вершины — города, ребра — дороги. Городов в стране четное количество, по лемме о рукопожатиях, пронумеруем города от 1  до 2n  . Проведём дополнительных n  ребер: между 1  и 2  , 3  и 4  , …, 2n − 1  и 2n  (ребра могли получится кратными). Полученный граф является эйлеровым. Давайте начнем путь по циклу из вершины 1  по добавленному ребру, и поочередно отдавать дороги компаниям. В конце процесса у всех кроме, возможно, вершины 1  ровно по 2 дороги каждой компании. У 1  есть настоящие ребра обеих компаний, так как мы в какой-то момент зашли и вышли из нее. Затем уберём добавленные ребра, для любой вершины будет выполнятся условие, так как мы убрали всего одного ребро, исходящее из нее.

Ответ:

Ошибка.
Попробуйте повторить позже

Задача 9#35506

Докажите, что можно выписать цифры от 0 до 9 (всего 1002 цифры) так, чтобы любая комбинация из трех стоящих подряд цифр встретилась ровно 1 раз.

Показать ответ и решение

Рассмотрим граф, вершинами которого являются пары цифр (упорядоченные). Количество таких пар 10⋅10= 100  (каждое из 2 чисел можно выбрать 10 способами). Будем проводить стрелочку из вершины A  в вершину B  , если второе число A  равно первому числу   B  . Заметим, что из каждой вершины выходит 10 ребер и входит 10 ребер. Если мы сотрем ориентацию на ребрах, то легко видеть, что полученный граф будет связным. Тогда также как и во второй задаче найдем ориентированный цикл, содержащий все ребра. Заметим, что каждой последовательности из 3 чисел соответствует ровно 1 ребро (между первыми двумя числами и последними двумя числами). Выпишем сначала произвольную пару чисел, а затем будем дописывать следующую согласно нашему циклу (то есть, если мы выписали числа из вершины A  , а следующей в нашем цикле является вершина B  , то допишем на доску последнюю цифру B  и так далее). Поскольку мы прошли по всем ребрам ровно 1 раз, у нас встретятся все комбинации из 3 чисел, причем ровно по 1 разу, что и требовалось.

Ответ:

Ошибка.
Попробуйте повторить позже

Задача 10#35507

В стране 1988 городов и 4000 дорог. Докажите, что можно указать кольцевой маршрут, проходящий не более, чем через 20 городов (каждая дорога соединяет два города).

Показать ответ и решение

Назовём город “захолустным”, если из него идёт не более двух дорог. Сотрём с карты страны любой захолустный город, если таковой имеется, вместе с выходящими из него дорогами. Подчистим таким же образом новую карту и будем продолжать стирание захолустных городов, пока они не исчезнут. Число дорог, которые мы при этом можем стереть, не превосходит 2⋅1988 <4000  ; поэтому хотя бы один город останется.

Выберем любой из оставшихся городов. Из него, как и из других оставшихся городов, выходят по меньшей мере три дороги. Пойдём по одной из них и каждый раз, приходя в новый город, будем двигаться дальше по одной из дорог, отличных от дороги, по которой мы пришли. Если какие-нибудь два маршрута, состоящие не более чем из 10 дорог, закончатся в одном городе, то мы получим искомый кольцевой маршрут не более чем из 20 дорог. В противном случае число всех таких маршрутов не меньше чем         2       9    10
3(1+2 +2 + ...+ 2)= 3(2 − 1)=3069  , а число городов, то есть возможных концов этих маршрутов — не больше 1988. Противоречие.

Ответ:

Ошибка.
Попробуйте повторить позже

Задача 11#35509

В стране Центумии некоторые пары городов соединены дорогами, причем из каждого города выходит ровно 100 дорог. Пучком называется набор из 10 дорог, выходящих из одного города. Докажите, что все дороги можно разбить на несколько пучков.

Показать ответ и решение

Рассмотрим граф G  , в котором вершины — это города, а рёбра — дороги. Степени всех вершин этого графа равны 100. Начнем ходить из произвольной вершины графа. Будем ходить по ранее не пройденным ребрам, пока можем. Если мы в какой-то момент не сможем выйти из вершины, то мы прошли все 100 ребер, выходящих из нее. Предположим, что эта вершина, отличная от стартовой. Тогда число входов в вершину на 1 больше числа выходов, следовательно мы посетили нечетное число ребер, выходящих из вершины (каждый вход и выход добавляет одно ребро). То есть мы зациклились. Выкинем все ребра этого цикла. У каждой вершины степень по-прежнему четна. Опять найдем цикл, выкинем все его ребра и так далее.

В итоге мы разбили ребра графа на не пересекающиеся по ребрам циклы. На каждом цикле зададим направление обхода (поставим на ребрах стрелочки, идущие в одном направлении). Тогда в каждую вершину G  входит 50 ребер и из каждой вершины выходит тоже 50 ребер. Разобьем все ребра, выходящие из каждой вершины, на 5 пучков. Тогда все рёбра графа G разобьются на пучки, что и требовалось.

Ответ:

Ошибка.
Попробуйте повторить позже

Задача 12#37113

В стране Ориентация на всех дорогах введено одностороннее движение, причём из каждого города в любой другой можно добраться, проехав не более чем по двум дорогам. Одну дорогу закрыли на ремонт так, что из каждого города по-прежнему можно добраться до любого другого. Докажите, что для каждых двух городов это можно сделать, проехав не более чем по трём дорогам.

Показать доказательство

Пусть на ремонт закрыли дорогу из города A  в город B  .

По условию от любого города до другого существовал маршрут не более, чем из двух дорог. Если этот маршрут не содержал дорогу A → B  , то и после ремонта выполнено условие, что добраться данным маршрутом можно не более, чем по трём (даже двум) дорогам. Осталось рассмотреть маршруты вида 1)A → B → X,2)X → A → B,3)A → B  , где X  - произвольный город, отличный от A  и B  .

1)  Для первого случая используем, что из A  осталась дорога хотя бы в один город Y  , иначе из A  было бы невозможно никуда добраться. В случае Y = X  получен маршрут из одной дороги A → X  , иначе же всё равно существует маршрут из Y  в B  не более, чем из двух дорог, не проходящий через дорогу AB  , за счёт условия на исходную дорожную систему до ремонта. Ведь в случае прохождения маршрута от Y  к B  через AB  пришлось бы добраться до города A  за один переезд, но из Y  в A  пути нет — дорога направлена в другую сторону.

2,3)  Для второго и третьего случаев используем, что в B  осталась дорога хотя бы из одного города Z ⁄= A  , иначе в B  было бы невозможно попасть. В случае X = Z  получен маршрут из одной дороги Z → B  , иначе же всё равно существует маршрут из исходного города (X  или A  ) в Z  не более, чем из двух дорог, не проходящий через дорогу AB  , за счёт условия на исходную дорожную систему до ремонта. Ведь в случае прохождения маршрута от A  (или X  ) к Z  через AB  пришлось бы добираться из города B  в город Z  за один(не более, чем один) переезд, но такое сделать невозможно — дорога направлена в другую сторону.

В итоге путь имеет длину не больше трёх.

Ошибка.
Попробуйте повторить позже

Задача 13#70786

В стране Центумии некоторые пары городов соединены дорогами, причем из каждого города выходит ровно 100  дорог. Пучком называется набор из 10  дорог, выходящих из одного города. Докажите, что все дороги можно разбить на несколько пучков.

Источники: СпбОШ - 2015, задача 11.6(см. www.pdmi.ras.ru)

Показать доказательство

Рассмотрим граф G  , в котором вершины — это города, а рёбра — дороги. Степени всех вершин этого графа равны 100.  Разобьем все рёбра графа G  на реберно непересекающиеся циклы. В каждом цикле зададим произвольно порядок обхода и ориентируем рёбра в направлении обхода цикла. Тогда в каждую вершину G  входит 50  ребер и из каждой вершины выходит тоже 50  ребер. Разобьем все ребра, выходящие из каждой вершины, на 5 пучков. Тогда все рёбра графа G  разобьются на пучки.

Ошибка.
Попробуйте повторить позже

Задача 14#83302

При каких значениях n  полный граф из n  вершин будет эйлеровым?

Показать ответ и решение

Связный граф эйлеров, если в нём 0 или 2 вершины нечетной степени. В противном случае, граф будет неэйлеровым.

В полном графе из n  вершин степень каждой вершины равна n − 1  . То есть, если n  - чётно, то n − 1  - нечётно, и в случае n > 2  получается, что у нас >  2  вершин нечётной степени, и тогда граф неэйлеров.

Если же n = 2  , то получаем отрезок между двумя точками, который, очевидно, эйлеров.

А если n > 2  и, наоборот, n  - нечётно, то n− 1  - чётно, и поэтому у нас все вершины чётной степени, значит, такой граф эйлеров (очевидно, он связен).

Ответ:

при n = 2  и при любом нечётном n > 2

Рулетка
Вы можете получить скидку в рулетке!