Как найти цепочки пар? Попала ко мне задача:
1. есть человек, у которого 3-хкомнатная квартира. Он ее хочет продать и купить 2 квартиры по 1 комнате + взять деньги.
2. Есть человек, который просто продает 1-комнатную квартиру.
3. Есть человек, который продает 2-хкомнатную квартиру
4. Есть человек, который просто продает 1-комнатную квартиру, доплачивает и покупает 2-хкомнатную.
А теперь надо составить цепочку из всех этих людей так, чтобы все поучаствовали в сделке и все остались довольны. Вопрос в том, что есть объем покупателей и продавцов, сравнимый с avito и риелтерское агенство, которому надо окучить (в идеале) всех людей. Т.е. надо составлять кратчайшие пары, можно составлять цепочки из 3-4 покупателей, лишь бы максимальный охват был. Прямым перебором будет невероятно долго. Как лучше решить эту задачу?

21 Авг 2019 в 06:21
222 +1
0
Ответы
1

Для решения данной задачи можно воспользоваться методом графов и поиска в ширину (BFS). В данном случае каждый человек и его предложение будут представлены вершинами, а связи между ними - ребрами.

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

Таким образом, можно найти оптимальное решение для данной задачи без долгого перебора всех возможных вариантов.

20 Апр 2024 в 13:19
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 95 924 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир