Процессы и алгоритмы
Ошибка.
Попробуйте повторить позже
Докажите, что у любого конечного множества натуральных чисел существует подмножество
удовлетворяющее следующим
условиям: если
различны, то ни одно из чисел
не делится на другое и ни одно из чисел
не
делится на другое, а также для любого
найдётся
такое, что или
делится на
или
делится на
Подсказка 1
В задаче есть какие-то отношения между числами, поэтому удобно ввести двуцветный ориентированный граф. Как будет выглядеть задача на этом языке?
Подсказка 2
Какие вершины в теории могут оказаться в множестве B? Почему если их назвать нужным множеством, то задача не решится?
Подсказка 3
Запустите процесс, каждый раз добавляя в B числа, которые в парах бывают делителями. Осталось лишь избавиться от делимости в B. Как это сделать? Почему процесс закончится?
Рассмотрим двуцветный ориентированный граф, у которого вершинами будут элементы множества и от вершины
к вершине
идет
синяя стрелка, если
делится на
и красная, если
делится на
Тогда мы хотим выбрать независимое подмножество вершин
такое, что в любую вершину множества
ведет стрелка из
Поделим вершины на три группы: исходные, выбранные и хорошие (вершины будут перемещаться из группы в группу, но никакая
вершина на может находиться в двух группах одновременно). Изначально все вершины находятся в группе исходных. Выберем среди них
такие, в которые не входит ни одна синяя стрелка и отправим их в группу выбранных. Тогда, в силу транзитивности синих стрелок,
в каждую исходную вершину ведет хотя бы одна синяя стрелка из выбранных вершин. Если так случилось, что между
выбранными вершинами нет красных стрелок, то, приняв за множество выбранных вершин, мы решим задачу. Если
же красные стрелки есть, то найдем все выбранные вершины, в которые ведет хотя бы одна красная стрелка из других
выбранных, и отправим их в группу хороших. После этого, могло оказаться, что в некоторые исходные вершины не идет синей
стрелки из выбранных. В этом случае добавим в множество выбранных те вершины из исходных, в которые синие стрелки
приходят только из хороших вершин. После этого снова отправим в группу хороших те из выбранных вершин, в которые
ведет хотя бы одна красная стрелка из других выбранных. В силу транзитивности теперь уже красных стрелок, в любую
хорошую вершину все еще ведет хотя бы одна красная стрелка из выбранных. Будем продолжать такие перемещения
(из исходных в выбранные, из выбранных в хорошие). Заметим, что если в некоторый момент мы не смогли уменьшить
множество исходных вершин, то задача решена, а так как изначально там конечное число вершин, этот момент обязательно
наступит.
Специальные программы

Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!

Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.

Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.

Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».

Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!

Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!