Графы и турниры → .04 Считаем рёбра
Готовиться с нами - ЛЕГКО!
Ошибка.
Попробуйте повторить позже
На олимпийские игры приехали спортсмены из нескольких стран. Каждый участник пожал руку всем участникам из других стран
(участники из одной страны друг другу руки не жали). При этом оказалось, что количество рукопожатий между спортсменами одного пола
отличается от количества рукопожатий между спортсменами разного пола не более чем на Как ни странно, число мужчин и женщин
среди участников различается тоже не больше чем на
Какое наибольшее количество стран могло отправить на игры нечётное число
спортсменов?
Оценка. Обозначим через количество стран, а через
и
— количество мужчин и женщин в
-й стране соответственно. По
условию
Заметим, что
Значит,
По условию поэтому
Заметим, что если из
-й страны приехало нечётное число участников, то
Следовательно, стран с нечётным числом участников не более трёх.
Пример. Пусть стран всего три, из двух приехало по одному мужчине, а из третьей — одна женщина.
Ошибка.
Попробуйте повторить позже
В стране город. Некоторые города соединены дорогами с односторонним движением, причём в каждый город входит
дорог и из
каждого города выходит
дорог. Докажите, что из каждого города можно добраться до любого другого, проехав не более чем по трём
дорогам.
Рассмотрим произвольные города и
Разделим все города на три группы:
—
городов, в которые ведут дороги из
—
городов, из которых есть дороги в
(не включая сам
Если
лежит в
или
в
то можно добраться по одной дороге.
Если
пересекается с
то по двум. Если они не пересекаются, то выделим оставшиеся
городов в группу
Из
выходит
стрелок, из них не более
лежат полностью в
и не более
ведут в
Тогда найдется хотя
бы
стрелок ведущих из в
или
Ошибка.
Попробуйте повторить позже
Предложите эффективный алгоритм для поиска максимального потока в графе с целочисленными весами, используя теорему Форда-Фалкерсона. Обоснуйте его корректность. Будет ли ваш алгоритм работать для вещественных весов?
Алгоритм Эдмондса-Карпа с обходом в ширину
Шаги алгоритма:
- 1.
-
Инициализация: поток
для всех рёбер.
- 2.
-
Пока существует путь из истока
в сток
в остаточной сети
- Найти кратчайший путь
из
в
с помощью BFS (обход в ширину).
- Увеличить поток вдоль
на величину остаточной пропускной способности
- Обновить остаточную сеть
- Найти кратчайший путь
Корректность:
- Теорема Форда-Фалкерсона: Поток максимален тогда и только тогда, когда в остаточной сети нет дополняющих путей, значит, пока поток не максимален, найдется путь, по которому мы увеличим поток.
- Конечность: При целочисленных пропускных способностях каждый шаг увеличивает поток на целое число. Так как
максимальный поток ограничен (например, суммой пропускных способностей рёбер из истока), алгоритм завершится за
шагов, где
— значение максимального потока, и на каждом шаге мы заупскаем BFS.
Пример несходящегося алгоритма: Рассмотрим сеть с источником стоком
рёбрами
и пропускными
способностями:
а пропускные способности остальных рёбер равны целому числу
Константа удовлетворяет условию:
Используем пути в остаточном графе:
Шаг | Найденный путь | Добавленный поток | | | |
0 | — | — | | | |
1 | | 1 | | | |
2 | | | | | 0 |
3 | | | | | |
4 | | | | 0 | |
5 | | | | | |
- После шагов
и
остаточные пропускные способности рёбер
имеют вид
где
-
Цикл из путей
может повторяться бесконечно. Полный поток после шага
-
При бесконечном выполнении поток сходится к:
но максимальный поток равен
Ошибка.
Попробуйте повторить позже
В Нонквинтляндии городов, некоторые из которых соединены дорогами. Путешественник обнаружил, что невозможно проехать по пяти
разным дорогами и вернутся в исходный город. Докажите, что в стране не более
дорог.
Каждая дорога соединяет два города. Два города могут быть соединены не более, чем одной дорогой. По каждой дороге можно двигаться в любом из двух направлений. Путешественник может двигаться только по дорогам.
Источники:
Подсказка 1
Глобально нас просят доказать, что количество рёбер не превосходит 2/3 от максимально возможного.
Подсказка 2
Для доказательства этого нужно как-то использовать, что в графе нет циклов длины 5. Попробуйте, используя это, доказать задачу про какой-то маленький подграф данного графа.
Подсказка 3
Попробуйте доказать это для любого подграфа из 6 вершин. Далее с помощью небольшого комбинаторного подсчёта докажите это для данного графа.
Будем называть замкнутый маршрут из пяти дорог, существование которого запрещено условием, 5-циклом.
Докажем сначала, что если мы рассмотрим какие-либо шесть городов, между ними будет проведено не более 10 дорог из возможных 15. Предположим противное: пусть между какими-то шестью городами проведено не менее 11 дорог. Тогда среди этих шести городов и соединяющих их дорог найдём 5-цикл, существование которого запрещено условием.
Нам достаточно доказать, что мы сможем найти 5-цикл, если дорог ровно 11. Действительно, если дорог больше 11, удалим лишние и докажем, что цикл из 5-цикл среди оставшихся дорог всё равно найдётся.
Для удобства, если какие-то два города не соединены дорогой, будем говорить, что они соединены антидорогой. Таким образом, мы хотим доказать, что мы сможем найти 5-цикл, если между шестью городами проведены ровно четыре антидороги.
Какие-то две антидороги точно выходят из одного города. Исключим его и рассмотрим оставшиеся пять городов. Пронумеруем их числами от 1 до 5. Между этими городами не более двух антидорог. Опять же, достаточно найти 5-цикл в ситуации, когда этих антидорог ровно две, в противном случае он найдётся и подавно.
Есть две возможных ситуации: когда эти антидороги имеют общий конец, и когда не имеют.
В первом случае без ограничения можно считать, что антидороги соединяют город 1 с городами 2 и 3. Тогда мы можем найти следующий 5-цикл: 1-4-2-3-5-1.
Во втором случае можно считать, что наши антидороги соединяют город 1 с городом 2, а город 3 с городом 4. Тогда мы сможем найти такой 5-цикл: 1-3-5-2-4-1.
Мы доказали, что среди любых 5 городов проведено не более 10 дорог из 15, то есть максимум от всех возможных дорог. Поскольку
каждая пара городов с проведённой между ними дорогой или антидорогой входит в равное число таких шестёрок, поэтому общее количество
дорог также составляет не более
от максимально возможного, то есть максимум
Докажем это чуть более строго. В каждой шестёрке городов не более 10 дорог. Всего этих шестёрок Итого получаем
дорог,
однако, каждая из них посчитана несколько раз. А именно, к каждой паре городов можно подобрать ещё 4 города
способами, значит,
именно столько раз мы посчитали каждую дорогу.
Таким образом, всего дорог не более
Ошибка.
Попробуйте повторить позже
Подсказка 1:
Нужно грамотно интерпретировать задачу на языке графов. Давайте считать учеников вершинами, а ребро будем проводить между теми, кто дружат. Как из помощью такого графа получить график дежурств?
Подсказка 2:
Как насчёт того, чтобы выкидывать из графа ребро, соединяющее учеников, которые вместе дежурят? Также выкинем вершины, соответствующие этим ученикам и другие рёбра, выходящее из них. Почему получится найти 10 дежурств?
Подсказка 3:
Попробуйте привести пример такого графа, в котором не получится выбрать 11 дежурств. Попробуйте рассмотреть граф, состоящий из большого количества одинаковых компонент связности.
(a) Рассмотрим граф, в котором дети это вершины. Будем проводить ребро, если дети дружат. По условию все вершины имеют степень 2, значит, в графе 30 рёбер. Будем выбирать произвольное ребро, выкидывать вершины на его концах и все рёбра, исходящие из этих вершин. Так мы удалим не более 3 рёбер (поскольку степени вершин не превосходят 2, а одно из рёбер у этих вершин общее). Значит, если проделать такой процесс 9 раз, останется хотя бы 3 ребра, и удастся сделать десятый шаг. Составим пары для дежурств из учеников, соответствующих концам выбранных ребер. Тогда дежурят только друзья, и никто не дежурит дважды, поскольку мы сразу же удаляем вершины. Таким образом, мы выбрали 10 пар.
(b) Пусть граф состоит из 10 треугольников: компонент связности размера 3, каждая из которых является полным графом. Тогда степень каждой вершины равна 2, при этом дежурить должны дети из одного треугольника, каждый треугольник даёт только по одному дежурству (поскольку все дежурят не более одного раза), но треугольников всего 10, значит, 11 дежурств провести не получится.
(b) нет
Ошибка.
Попробуйте повторить позже
Докажите, что в графе с вершинами и
ребрами число треугольников не меньше
Первое решение. Граф называется дополнительным для графа
если
имеет то же множество вершин, что и
а ребро
между вершинами
проводится тогда и только тогда, когда в
соответствующие вершины несмежны.
Назовём антитреугольником тройку вершин, которые не образуют треугольник. Оценим число антитреугольников. Всего антирёбер
Пусть путей длины 2 в дополнительном графе а треугольников в дополнительном графе
Каждое антиребро входит в
антитреугольника. Покажем, что антитреугольников всего
Для этого заметим, что каждый антитреугольник
учтён в
этой сумме 1 раз. Действительно, если в
одно антиребро, то мы посчитали его только в первом слагаемом. Если в
два антиребра, то
они образуют один путь длины 2, тогда
учитывается в слагаемом
дважды и вычитается один раз, благодаря вычитанию
Если же в
три антиребра, то они образуют три пути и один треугольник и, следовательно,
трижды учитывается в первом слагаемом,
три раза вычитается, благодаря вычитанию
и учитывается еще 1 раз в слагаемом
Теперь оценим
Действительно, каждый
треугольник содержит в себе 3 пути, а каждый путь лежит внутри одного треугольника. Значит, число антитреугольников не более
Пусть — степень
-ой вершины в дополнительном графе. Каждый путь длины 2 содержит ровно одну центральную вершину, так
что
По неравенству о средних оценим
Тогда всего антитреугольников не более, чем
Подставляя в оценку из условия вместо
получаем:
Мы добавили к требуемой оценке число, которое не меньше числа антитреугольников, и получили в точности количество всех троек
вершин. Значит, треугольников не меньше что и требовалось.
_________________________________________________________________________________________________________________________________________________________________________________
Второе решение. Пусть — степень
-ой вершины графа. Рассмотрим ребро
количество треугольников
в которые
данное ребро входит, равно числу общих соседей вершин
Пусть
— число вершин, смежных с
или
Очевидно, что
Тогда по формуле включения-исключений имеем:
Суммируя по всем ребрам и учитывая, что каждый треугольник считается трижды, общее число треугольников не
меньше
Каждый появляется каждый раз, когда
является концом ребра из
, то есть
раз; всего пар
, значит
вычитается
раз. По неравенству Коши–Буняковского:
Наконец, сумма Следовательно,
Ошибка.
Попробуйте повторить позже
В математическом лагере у каждого участника есть друга (если
дружит с
, то и
с
При этом, если какие-то два участника
дружат, то общих друзей у них нет, а если не дружат, то у них ровно
общих друзей. Сколько человек в математическом
лагере?
Рассмотрим граф, в котором вершины — участники лагеря, а рёбра означают дружбу.
Посчитаем число троек где
дружит с
и с
а
и
не дружат.
С одной стороны, у каждого участника таких троек, всего
С другой стороны, каждая пара недрузей имеет
общих
друзей, значит, таких троек в
раз больше числа пар недрузей. Таких пар:
Имеем:
100
Ошибка.
Попробуйте повторить позже
На плоскости отмечены точек, никакие три из которых не лежат на одной прямой, и проведены все отрезки между ними. Гриша
поставил на каждом проведённом отрезке вещественное число, по модулю не превосходящее 1, и для каждой шестёрки отмеченных
точек посчитал сумму чисел на всех 15 отрезках, соединяющих их. Оказалось, что каждая такая сумма по модулю не
меньше числа
при этом среди таких сумм есть как положительная, так и отрицательная. При каком наибольшем
это
возможно?
Подсказка 1
Рассмотрим граф с вершинами в отмеченных точках. Имеются шестёрки с суммами разных знаков. Поскольку мы работаем с кликами, подумайте: какой вид рассуждений о непрерывности может помочь при переходе между шестёрками вершин? Что происходит при замене одной вершины в шестёрке?
Подсказка 2
Если найдутся две шестёрки с разными знаками сумм, отличающиеся одной вершиной, то их объединение содержит 7 вершин. Чем интересно данное множество из 7 вершин? Сколько подшестёрок оно содержит и можно ли сказать что-то про знаки сумм этих шестёрок?
Подсказка 3
Возможно, для анализа данной клики на 7 вершинах стоит её упростить, например, сделав числа на рёбрах одинаковыми.
Подсказка 4
Классифицируйте вершины в этом 7-вершинном множестве: назовите вершину "типа A", если при её удалении сумма в оставшейся шестёрке отрицательна, и "типа B" — если положительна. Пусть k — количество вершин типа A. Какие значения k существенны, а какие аналогичны между собой?
Подсказка 5
Разделите рёбра на три типа: AA (между вершинами типа A), AB (между A и B), BB (между вершинами типа B). Если заменить веса на рёбрах каждого типа на их среднее арифметическое, то как это преобразование повлияет на суммы в подшестёрках? Сохранятся ли условия задачи?
Подсказка 6
Анализировать такую 7-ку вершин намного легче. Можно записать неравенства на искомую константу С при помощи новых значений на ребрах.
Подсказка 7
Какие бы ограничения на константу ни были найдены ранее, всё равно нужно предоставить числа для рёбер, которые будут её реализовывать. Может быть, вид 7-ки после замены чисел на средние можно распространить на весь граф?
Рассмотрим граф, вершинами которого являются отмеченные точки, а рёбрами — проведённые отрезки.
Оценка. Докажем оценку Условие гласит, что в нашем полном графе есть как шестёрки вершин, сумма на рёбрах между
которыми положительна, так и шестёрки, сумма на рёбрах между которыми отрицательна. Тогда найдутся две шестёрки,
отличающиеся заменой только одной вершины, такие, что у одной из них сумма положительна, у другой отрицательна. В
самом деле, возьмём шестёрку с положительной суммой, и будем превращать её в шестёрку с отрицательной суммой, меняя
вершины по одной, — на каком-то шаге произошло изменение знака, шестёрки, которые были до и после этого шага – искомая
пара.
Далее работаем с полным подграфом на множестве из семи вершин – объединении вышеописанной пары шестёрок. Рассмотрим все
семь шестёрок, которые можно получить выбрасыванием одной вершины из
Пусть среди них
с отрицательными суммами —
получающиеся выбрасыванием вершин
будем называть эти вершины
-вершинами, а соответствующие шестёрки –
-шестёрками), и
с положительными суммами — получающиеся выбрасыванием вершин
(будем называть эти
вершины
-вершинами, а соответствующие шестёрки –
-шестёрками). Рёбра между двумя
-вершинами будем называть
-рёбрами, между двумя
-вершинами —
-рёбрами, а рёбра, соединяющие
-вершину с
-вершиной —
-рёбрами.
Из изначальной расстановки чисел на рёбрах, соединяющих вершины множества получим новую расстановку, заменив все числа на
-рёбрах на число
равное их среднему арифметическому, и аналогично заменив все числа на
-рёбрах на их среднее
арифметическое
а все числа на
-рёбрах на их среднее арифметическое
Очевидно,
так как все старые
числа по модулю не превосходят 1.
_________________________________________________________________________________________________________________________________________________________________________________
Лемма. Подграф с новыми числами на рёбрах удовлетворяет условию с той же константой
Доказательство леммы. Заметим, что для каждого -рёбра есть одно и то же количество
-шестёрок, в которые входят оба его
конца. И наоборот, для любой
-шестёрки среди 15 рёбер между её вершинами есть одно и то же количество
-рёбер. То же верно для
-рёбер и для
-рёбер. Значит, сумма
чисел на рёбрах в
-шестёрке в новой расстановке есть среднее сумм по всем
-шестёркам в старой расстановке, то есть среднее нескольких чисел, не больших –
значит,
Аналогичное утверждение
верно для сумм в
-шестёрках. Лемма доказана.
_________________________________________________________________________________________________________________________________________________________________________________
Далее изучаем новую расстановку. Рассмотрим случаи.
Случай Иными словами, есть ровно одна
-шестёрка, на которой пятнадцать
-рёбер, и шесть
-шестёрок, на каждой
из которых десять
-рёбер и пять
-рёбер. Имеем систему неравенств:
Умножим первое на сложим со вторым, умноженным на 3, получим
откуда
Случай Теперь у нас две
-вершины и пять
-вершин, то есть на
-шестёрке есть десять
-рёбер и пять
-рёбер,
а на
-шестёрке – шесть
-рёбер, восемь
-рёбер и одно
-ребро. Имеем
Исключая получаем
значит,
Случай Аналогично предыдущему, имеем
Избавляясь на этот раз от получаем
откуда
Случаи сводятся к рассмотренным умножением всех чисел на
что ведёт к замене
Итак, оценка
доказана.
Пример. Любое число вершин от двух до 999995 объявим вершинами типа остальные – вершинами типа
На всех рёбрах между
двумя вершинами типа
напишем число
на всех остальных – число 1. Тогда, если в шестёрке вершин хотя бы пять
-вершин, то
сумма в ней не больше
а иначе – не меньше
Ошибка.
Попробуйте повторить позже
Дан граф с вершинами без рёбер. Двое по очереди проводят не проведённое ранее ребро. Проигрывает тот, после чьего хода граф
станет связным (то есть от любой вершины можно будет добраться до любой другой). Кто выигрывает при правильной игре — начинающий
или его соперник?
Рассмотрим момент перед поражением одного из игроков при правильной игре. Легко видеть, что граф должен состоять
из двух компонент связности, каждая из которых представляет собой полный граф (иначе можно проводить ребра так,
чтобы граф не стал связным). Пусть в одной из этих компонент вершин, тогда во второй
Тогда ребер в этом
графе
Ясно, что это число всегда нечетно. Тогда завершающий ход при правильной игре всегда принадлежит Васе. Значит, Петя всегда выиграет, играя как угодно, до того, как получатся две компоненты связности, а когда они получились, ему нужно проводить только ребра внутри них.
Петя
Ошибка.
Попробуйте повторить позже
В стране город, любые два города соединены дорогой с односторонним движением. Из каждого города выходит ровно
дорог, в
каждый город входит ровно
дорог. От страны отделилась независимая республика, в которую вошли
городов.
Докажите, что из любого города этой республики можно доехать до любого другого ее города, не выезжая за пределы
республики.
Подсказка 1
Предположим противное, то есть из города X нельзя добраться до Y по городам республики. Разбейте республику на 2 части, как-то связанные с X.
Подсказка 2
Разбейте республику на 2 множества городов. До первых можно доехать из X, а до вторых - нет(туда войдет Y). Тогда все дороги направлены из второго множества в первое. Поймите на языке алгебры, что такое невозможно.
Предположим, что утверждение неверно; скажем, из города нельзя добраться до
по городам республики.
Обозначим через множество всех городов республики, до которых можно добраться из
по городам республики (включая сам
город
), а через
— множество всех остальных её городов (оно непусто, так как содержит
). Тогда города республики разбились на
две группы так, что все дороги между группами направлены от
к
Обозначим количество городов в группах и
через
и
соответственно,
Пусть в
городов не меньше, чем в
то есть
В
есть город Z, из которого выходит не менее
дорог в города из
Кроме того, из
выходит
дорог к городам группы
Значит, из
выходит не менее
дорог.
Противоречие.
Случай, когда в больше городов, чем в
рассматривается аналогично.
Ошибка.
Попробуйте повторить позже
На свободные поля шахматной доски по одному выставляются короли. Первый выставляется произвольно, каждый следующий должен бить нечетное число ранее выставленных. Какое наибольшее число королей можно выставить?
Подсказка 1
Сначала можно заметить, что 64 короля выставлено быть не может! Как доказать этот факт?
Подсказка 2
Верно! С одной стороны, если считать королей вершинами, а ребрами показывать отношение "один король бьет другого", то ребер в таком графе четное число. А как их посчитать по-другому?
Подсказка 3
Точно! Всякий раз мы добавляем нечетное число ребер в граф 63 раза, то есть их количество нечетно! Итак, всего королей не более 63. А какой пример подойдет?
Для начала покажем, что поставить не получится. Предположим, что мы смогли это сделать. Рассмотрим граф, в котором короли — это
вершины. Рёбрами соединим королей, которые друг друга бьют. Тогда, с одной стороны, мы получили граф, в котором
рёбер (потому что все короли бьют всех королей на всех соседних клетках). С другой же стороны, каждый раз добавляя
очередного короля (кроме первого), мы добавляли в граф нечётное количество рёбер. В граф нечётное количество раз
(
) было добавлено нечётное количество рёбер. Значит, количество рёбер в графе должно быть нечётным. Пришли к
противоречию.
Теперь приведём пример на Нужно ставить королей в следующем порядке на клетки с координатами:
Ошибка.
Попробуйте повторить позже
В стране городов. Некоторые из них соединены авиалиниями, а некоторые нет. Известно, что для любых
городов найдётся
пар городов, не соединённых авиалиниями. Какое наибольшее количество авиалиний может быть в стране?
Источники:
Подсказка 1
Переведем задачу на язык графов. Нам нужно придумать, как использовать условие на 200 городов. А что если взять какие-нибудь особенные 200 городов?
Подсказка 2
Рассмотрим подграф А из 200 вершин с наибольшим количеством рёбер и подграф В из оставшихся 200 вершин. Нам нужно как-то оценить количество ребер между А и В. Что можно сказать о степенях вершин в В? А в А?
Подсказка 3
Рассмотрим вершину из А, соединенную с наименьшим количеством вершин (в А). Пусть такая ее степень это х. Какие тогда степени могут иметь вершины из В?
Подсказка 4
Ни одна вершина в В не может быть соединена хотя бы с х+1 вершиной в А. Как тогда оценить количество рёбер между А и В? Нам надо сделать его как можно больше.
Подсказка 5
Между этим графами не более, чем 200*х рёбер. А в подграфах сколько ребер может быть максимально?
Подсказка 6
Не более, чем 2*19600. Итак, теперь нам надо оценить х. Как это можно сделать?
Подсказка 7
Если х — это наименьшая степень вершины в х, то сколько рёбер может быть в А?
Подсказка 8
Не менее, чем 100х. Осталось лишь оценить х, используя полученные оценки на подграф А ;) не забываем про пример!
Рассмотрим граф, в котором города — вершины, а авиалинии — рёбра. Рассмотрим подграф из
вершин с наибольшим количеством
рёбер и подграф
из оставшихся
вершин.
Пусть вершина из подграфа
соединена с наименьшим количеством вершин в этом подграфе (
вершин). Предположим,
что в подграфе
имеется вершина
, которая соединена с хотя бы
вершиной из подграфа
. В таком случае
вершину
можно переместить в подграф
вместо вершины
и в нём будет больше авиалиний, что противоречит
выбору подграфа
. Следовательно, любая вершина из подграфа
связана не более чем с
вершинами из подграфа
.
Значит, между этими подграфами не более рёбер. Внутри же каждого из этих подграфов не более
рёбер.
Значит, всего в графе не более
Как известно, — это наименьшая степень вершины в подграфе
. Значит, в
не менее
рёбер. С другой
стороны, в этом подграфе не более
рёбер, откуда
. Теперь мы можем оценить количество рёбер в графе:
.
_________________________________________________________________________________________________________________________________________________________________________________
Приведём пример на рёбер. Разбиваем города на
групп по
городов. Внутри групп между городами авиалиний нет, а между
городами из разных групп — есть.
Пусть выбрано городов так, что из них
город из первой группы,
из второй,
,
— из
-й. Тогда количество пар, не
соединённых авиалиниями, будет не менее
по неравенству между средним квадратическим и средним арифметическим
Мы показали, что для произвольного подграфа в примере выполняется условие задачи.
Ошибка.
Попробуйте повторить позже
В клетчатом квадрате вначале пустом, Жанна закрашивает по одной клетке, вписывая в каждую только что закрашенную клетку
количество граничащих с нею (по стороне) ранее закрашенных клеток. Чему будет равна сумма всех чисел в квадрате, когда будут
закрашены все клетки?
Подсказка 1
Пусть вершины — закрашенные клетки, а ребра — общие стороны закрашенных клеток. Что происходит с графом, когда мы закрашиваем одну клетку?
Подсказка 2
Подумайте, как соотносятся количество ребер в нашем графе с суммой чисел из условия в любой момент времени?
Пусть клетки будут вершинами, а общие границы у клеток — рёбрами, соединяющими их. Изначально в графе нет вершин и мы добавляем
новую вершину и записываем в неё количество рёбер, добавленных в граф. Это количество равно количеству границ между клетками, то
есть
Ошибка.
Попробуйте повторить позже
План замка — многоугольник, разделенный на одинаковых комнат в форме правильного треугольника со стороной
(из каждой
комнаты можно попасть в любую другую). Соседние комнаты прилегают друг к другу сторонами. Каков наибольший возможный периметр
замка?
Подсказка 1
Попробуем ввести графовую интерпретацию: треугольники-комнаты — это вершины, а ребра проводятся, если комнаты являются соседними. Какое тогда будет наименьшее число ребер в таком графе?
Подсказка 2
Конечно, 9, поскольку всего комнат 10, а граф, по условию, связен! А как можно по-другому выразить периметр замка через ребра и вершины?
Подсказка 3
Верно! Для периметра надо посчитать "внешнюю рамку" этих треугольников, а оно равно утроенному числу вершин минус удвоенному числу ребер (каждое ребро означает внутреннюю стену замка, каждая из которых учитывается по два раза, а вершины просто означают три стороны комнаты). Как теперь оценить максимальный периметр?
Подсказка 4
Конечно, теперь все просто, ведь у нас ровно 10 вершин, а ребер не менее 9, так что периметр не превосходит 3 * 10 - 2 * 9 = 12. А как должны быть расположены комнаты, чтобы достигнуть равенства 12?
Рассмотрим граф, вершины которого олицетворяют комнаты замка, а ребро присутствует между двумя вершинами, если соответствующие
им комнаты являются соседними. Из условия о том, что из каждой комнаты можно попасть в любую другую следует, что граф связен.
Тогда рёбер в нём хотя бы уменьшенное на число вершин, то есть хотя бы
Заметим, что периметр замка — утроенное число вершин
(суммарное число сторон комнат) минус удвоенное число рёбер (стороны, которые не должны учитываться в периметре, но нами посчитаны
соответственно для двух комнат). Эта величина максимум
равенство достигается при треугольничках в ряд
(последовательно повёрнутые в разные стороны).
Ошибка.
Попробуйте повторить позже
В особой больнице есть главврач и много пациентов. В течение недели каждый пациент один раз в день кусал кого-нибудь (возможно и
себя). В конце недели оказалось, что у всех пациентов по укуса, а у главврача —
укусов. Сколько в больнице
пациентов?
Подсказка 1
Попробуем перевести задачу на язык графов. Что можно считать ребрами, а что вершинами?
Подсказка 2
Верно! Будем считать, что вершинами являются пациенты и главврач, а ребра будем ставить ориентированные: от кусающих к укушенным. Конечно, в этом графе могут возникнуть петли и кратные ребра. А сколько новых ребер в графе прибавляется за 1 день?
Подсказка 3
Конечно! Пусть всего n пациентов. Каждый день появляется n новых укусов, поэтому каждый день получаем n новых ребер. Тогда в конце недели будет ровно 7n ребер в графе. А как еще можно посчитать число ребер?
Рассмотрим ориентированный граф, в котором вершины — пациенты и главврач, а ребра идут от кусающих к укушенным. Пусть всего
пациентов Тогда в этом графе каждый день в течение недели прибавлялось
новых ориентированных ребер (допускаются кратные
ребра и петли), поэтому, спустя
дней, этих ребер стало
С другой стороны, в конце недели каждый пациент имел
укуса, а
главврач —
укусов, следовательно, в конце недели в графе стало
ориентированных ребер. Тогда получаем
уравнение
Ошибка.
Попробуйте повторить позже
(a) Известно, что в компании каждый человек знаком более, чем с половиной присутствующих. Докажите, что можно выбрать из этой компании трёх попарно знакомых человек.
(b) Известно, что в компании каждый человек знаком не менее чем с половиной присутствующих. Докажите, что можно выбрать из компании четырех человек и рассадить за круглым столом так, что при этом каждый будет сидеть рядом со своими знакомыми.
Подсказка 1, пункт а
Здесь есть смысл рассмотреть произвольного человека A и его знакомых и попытаться найти среди них нужный треугольник.
Подсказка 2, пункт а
Стоит обратить внимание на то, что если какие-то два знакомых A знакомы, то задача решена.
Подсказка 1, пункт б
Попробуйте рассмотреть двух произвольных людей. Если найдете у них двух общих знакомых, то дело в шляпе.
(a) Рассмотрим произвольного человека Пусть он знаком с людьми
Заметим, что если какие-то
и
дружат, мы
нашли треугольник
Предположим, что они между собой не дружат. Пусть всего в компании
человек. Тогда
каждый
человек может дружить не более чем с
людьми. Учитывая, что
получаем
противоречие.
(b) Рассмотрим двух незнакомых людей и
(если таких нет, то все всех знают, то есть условие выполнено). Предположим, что
у них нет двух общих знакомых, тогда они суммарно знакомы не более чем с
людьми, что неверно, потому что
по условию они знакомы с хотя бы
людьми. Значит, у них есть двое общих знакомых. Их и возьмём вместе с
и
Ошибка.
Попробуйте повторить позже
В Джиннистане живут маги. Каждый маг дружит ровно с другими магами; для любых
магов найдется маг, который дружит с
каждым из этих
Сколько магов может быть в Джиннистане?
Подсказка 1
Подумайте, а сколько вообще может быть магов. Ясно, что их хотя бы 11. Может ли быть ровно 11? А больше 11?
Подсказка 2
Вероятно вы придумали пример на 11 и теперь думаете насчёт того, может ли быть больше 11. Попробуйте обратиться внимание на то, что каждой десятке магов сопоставлен какой-то маг, притом один маг не может быть сопоставлен двум разным десяткам.
Пусть всего магов Очевидно,
Случай
реализуется, когда все маги дружат между собой. Докажем, что случай
невозможен. По условию задачи каждой десятке магов сопоставлен маг, который дружит со всеми магами этой десятки. Разным десяткам
сопоставлены разные маги, так как каждый маг дружит ровно с
другими магами. Значит, разных десяток магов не более
Но это
очевидно не так: расставив магов по кругу и для каждого мага рассмотрев десятку, состоящую из него и следующих девяти по часовой
стрелке, мы получим
десяток. При этом есть десятка, не вошедшая в эти
— например, если считать по кругу, первые пять и с
седьмого по одиннадцатого.
магов
Ошибка.
Попробуйте повторить позже
В графе вершин, и никакие две вершины одинаковой степени не соединены ребром. Какое наибольшее количество рёбер может быть в
этом графе?
Оценка. Зафиксируем натуральное число Рассмотрим в графе все вершины степени
Они не соединены между собой, поэтому
оставшихся вершин хотя бы
Тогда вершин степени
не больше, чем
Значит, всего рёбер в графе не более,
чем
Пример. Разобьём вершин на группы. В первой группе
вершина, во второй —
вершины,
в последней —
вершины.
Пусть любые две вершины из разных групп будут соединены ребром, а вершины из одной группы — нет. Тогда в первой группе будет одна
вершина степени
во второй —
вершины степени
вершины степени
Получается, что суммарное количество
рёбер вычисляется по формуле из оценки, то есть равно
Ошибка.
Попробуйте повторить позже
Каждый из 2024 людей является рыцарем или лжецом. Некоторые из них дружат друг с другом, причём дружба взаимна. Каждого из них спросили про количество друзей, и все ответы оказались различными целыми числами от 0 до 2023. Известно, что все рыцари отвечали на вопрос верно, а все лжецы изменяли истинный ответ ровно на 1. Какое наименьшее число лжецов могло быть среди этих людей?
Подсказка 1
Рассмотрим разбиение людей на две группы, группа A: назвали числа от 0 до n−1, группа B: назвали числа от n до 2n−1, где n = 1012. Можно ли связать число дружб людей из разных групп, обозначим его E, с числом лжецов в A/B?
Подсказка 2
Е оценивается сверху через истинное число друзей персонажей из A, а его можно оценить сверху через число лжецов в A. Есть ли аналогичная оценка для E снизу через число лжецов в B?
Подсказка 3
Почти все дружелюбные люди из группы B дружат более чем с половиной рыцарей и лжецов, значит, и с кем-то из A. Как для отдельного человека оценить это количество?
Подсказка 4
Сравним оценки для E: n(n−1)/2 + x ≥ E ≥ n(n+1)/2 − y, где x, y — количество лжецов в A и В соответственно. Какой отсюда следует вывод об общем числе лжецов?
Подсказка 5
x + y ≥ n. Надо построить пример с n лжецами. Может рассмотреть крайний случай, где достигаются оценки или где все лжецы входят в одну группу?
Оценка. Пусть Людей обозначим вершинами, номер вершины будет означать ответ соответствующего человека, а если пара
людей дружит, то проведем ребро между соответствующими вершинами.
Пусть — множество всех людей, которые назвали числа от 0 до
а
— множество всех людей, которые назвали числа от
до
Пусть
— степень вершины
Тогда по условию
если
— рыцарь, и
в противном случае. Пусть
в множестве
ровно
лжецов, а в множестве
— ровно
Оценим количество ребер между людьми из разных множеств
и
С одной стороны, не больше суммы степеней вершин множества
откуда
С другой стороны, из каждой вершины множества
не более
ребер идет в вершины множества
и значит, не менее
ребер идет в вершины множества
Отсюда
Получаем неравенство:
откуда Это означает, что всего лжецов не менее
Пример. Как и прежде, номер человека будет означать его ответ. Возьмем два множества людей:
и
Пусть в множестве никакие двое людей не дружат друг с другом, а в множестве
— любые двое дружат. Далее, пусть
человек
и
дружат тогда и только тогда, когда
Тогда у человека
всего
друг:
У человека будет всего
друзей:
из множества и все люди множества
кроме него самого. При этом все люди в
— лжецы, а в
— рыцари. Видим, что все
условия задачи выполняются.
1012
Ошибка.
Попробуйте повторить позже
Вася нашёл кубический граф (все степени вершин равны трём) и нарисовал его на плоскости без самопересечений так, что все рёбра
являются отрезками, параллельными прямым
причём рёбра, исходящие из одной вершины, параллельны разным прямым. Петя
покрасил каждое ребро в красный или синий цвет так, что если три отрезка образуют «клювик», то центральное ребро одного цвета, а
крайние другого, а если «треножку», то все цвета одинаковые.
1) Приведите пример получившейся картинки.
2) Покажите, что Васин граф — двудольный.
3) Оказалось, что на получившейся картинке нет одноцветных циклов. Покажите, что тогда клювиков больше, чем треножек.
4) Вася нашёл кубический граф посложнее, и нарисовал его с некоторыми пересечениями ребер. Пете всё равно удалось раскрасить ребра требуемым образом, при этом в его раскраске пересекаются только рёбра разных цветов. Вася накрыл каждое пересечение рублёвой монеткой, под которой не оказалось точек из других рёбер. Докажите, что теперь Вася сможет перерисовать картинку только под монетками так, чтобы она снова удовлетворяла преамбуле (изменив соответствующий граф).
Источники:
1) Рассмотрим красный шестиугольник и концентрический синий шестиугольник внутри него. Соединим соответственные вершины синими ребрами.
2) Без потери общности можно считать что углы между прямыми содержащими ребра расположены под углами в друг к другу.
Рассмотрим произвольный цикл, он является
-угольником. Рассмотрим некоторый угол этого
-угольнка, если он равен
или
то примыкающие стороны разноцетны, если же
или
то ребра одноцветны. Из соображений
чётности получаем, что углы
и
встречаются четное число раз, поэтому сумма углов делится на
но с другой
стороны сумма углов
Получили, что
чётное, значит, все циклы имеют сётную длины, а это критерий
двудольности.
3) Пусть в графе вершин, тогда ребер
из формулы Эйлера граней
Посмотрим на грань, так как это цикл, он
разноцветный, это происходит только грань содержит угол в
, из соображений четности из предыдущего пункта, этих клювика хотя бы
два. Каждый клювик содержит ровно два угла по
это позволяет оценит количество клювиков через число граней. Получили, что
клювиков хотя бы
а это больше половины от числа вершин.
4) Размыкаем синее рёбер в точке пересечения с красным, получаем две точки, соединим их какой-нибудь выпуклой красной кривой, поставим на ней пять точек и отметим "внутри"ещё две точки. Точки на кривой соединяем красными ребрами, а "внутрение"точки друг с другом синими. Осталось из внутренних провести два синих ребра, для этого соединим их точками с кривой.