С Новым годом! Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/21: Рейтинг темы: голосов - 21, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 13.11.2016
Сообщений: 2

Разбить граф на два полных

26.03.2018, 23:29. Показов 4413. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Требуется разбить неориентированный граф на два полных графа, то есть чтобы в результате получилось 2 графа, каждая вершина которого смежна с любой другой вершиной это графа. Ничего не приходит в голову, кроме как прямой перебор в лоб, но нужен алгоритм по-оптимальней. Подскажите, пожалуйста, в каком направлении копать.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.03.2018, 23:29
Ответы с готовыми решениями:

Какой из полных графов путем удаления ребер невозможно превратить в однородный граф?
Какой из полных графов с Н вершинами путем удаления ребер, невозможно превратить в однородный граф k - го порядка, если: 1) N = 19, k...

Разбить граф на уровни
Есть такое задание: упорядочить вершины графа – провести разбиение множества вершин графа на непересекающиеся подмножества (уровни),...

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

5
Модератор
Эксперт функциональных языков программирования
3134 / 2281 / 469
Регистрация: 26.03.2015
Сообщений: 8,877
27.03.2018, 10:46
Цитата Сообщение от boyar Посмотреть сообщение
Требуется разбить неориентированный граф на два полных графа, то есть чтобы в результате получилось 2 графа, каждая вершина которого смежна с любой другой вершиной это графа.
Кто-то гарантирует, что такое разбиение существует?
0
0 / 0 / 0
Регистрация: 13.11.2016
Сообщений: 2
27.03.2018, 12:33  [ТС]
Цитата Сообщение от Shamil1 Посмотреть сообщение
Кто-то гарантирует, что такое разбиение существует?
Пардон, задание не до конца озвучил.

... либо вывести сообщение о том, что такое разбиение невозможно.
0
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
30.03.2018, 11:30
что-то вы, наверное, еще не досказали. если речь именно о разбиении на две части, каждая из которых - полный подграф, то исходный граф должен представлять собой две компоненты связности, и, соответственно, разбиение однозначно.
0
Модератор
Эксперт функциональных языков программирования
3134 / 2281 / 469
Регистрация: 26.03.2015
Сообщений: 8,877
30.03.2018, 11:51
Цитата Сообщение от salam Посмотреть сообщение
что-то вы, наверное, еще не досказали. если речь именно о разбиении на две части, каждая из которых - полный подграф, то исходный граф должен представлять собой две компоненты связности, и, соответственно, разбиение однозначно.
Видимо, операция "разбить" подразумевает удаление "лишних" рёбер. Например, полный граф всегда можно разбить на два полных подграфа, так как любой подграф будет полным.
0
0 / 0 / 0
Регистрация: 25.10.2017
Сообщений: 16
20.05.2018, 11:27
Была похожая задача в контексте Яндекса, там в графе с n вершинами нужно было проверить можно ли его разбить на два полных подграф без общих вершин, используя при этом все вершины начального. Я написал что-то такое. Создаём два множества, ищем две точки у которых нет ребра, то есть они в разных подграфах и пушим в эти два множества(это будущие полные подграфы). Затем для каждой точки графа смотрим можем ли мы ее докинуть в какое-то множество, то есть нам надо проверить содержится ли одно множетсво в множестве инцедентных вершин этой точки(тип для полного графа все дела тыр пыр). Если точку можно докинуть в два графа одновременно, то закинем ее в какую-то очередь например, пока мы не рассмотрим все простые точки вот. Ок, все точки рассмлтрены, выфигачиваем точку из очереди и если она все ещё добавляема в два графа то кидаем ее в эти два графа, когда появляется точка которая протеворечит данной точке (которая лежит в двух множествах) то мы просто выпиливаем протеворечивую точки из множества, в которую мы не можем запихнуть текущую точку и спокойно ее туда пихаем. Собственно вроде все. А ну да, если протеворечивая точка не содержится в двух множествах одновременно, то все, гг.
Это все что я смог придумать на контексте, я закодил, но поймал TL на 5 тесте. Я конечно реализовывал коряво, а времени не оставалось, просто я хз как по другому(если мой вариант конечно правильный)
Могу кинуть код потом
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.05.2018, 11:27
Помогаю со студенческими работами здесь

Разбить неориентированный граф на максимальное число треугольников
Разбить неориентированный граф на максимальное число треугольников, подскажите как это делается

Определить сколько полных часов и полных минут прошло к данному моменту
Идет k-ая секунда суток. Определить сколько полных часов и полных минут прошло к этому моменту.

Определить, сколько полных часов (h) и полных минут (m) прошло к заданному моменту
Идет k-я секунда суток. Определить, сколько полных часов (h) и полных минут (m) прошло к этому моменту. C# !!!

Найти кол-во полных минут и полных часов, прошедших с начала суток
с начала суток прошло n секунд (n - целое). Найти кол-во полных минут и полных часов, прошедших с начала суток

Определить, сколько полных метров и полных сантиметров составляет высота дерева.
Здравствуйте, решите, пожалуйста, задачу. Высота дерева k миллиметров. Определить, сколько полных метров и полных сантиметров составляет...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru