На форумі обговорюються лише питання, пов'язані з олімпіадою
Ви не зайшли.
Сторінок: 1
Здесь я предлагаю обсудить решение задачи NewFerry
Если вы собрались написать сообщение в этой теме пожалуйста прочитайте следующие правила:
1. Постить только после окончания приёма решений. (без комментариев)
2. Постите код только если вас об этом попросили. (обилие кода делает тему нечитабельной)
3. Обсуждайте только задачу, которая указана в теме.
Надеюсь эти простые правила сделают обмен мнениями более плодотворным.
Відредаговано FireTiger (2007-01-04 20:37:14)
Поза форумом
Ідея слідуюча: перебор + алгоритм Дейстри.
Поза форумом
Будуємо всі комбінації для N бізнесменів (комбінації вважаються різними, якщо при накладанні одна на одну вони не співпадають). Отримані комбінації позначимо через F[i] і NF[i] -- обернена кобінація до F[i].Для кожної F[i] i NF[i] перевіряємо відсутність змов, і якщо змови відсутні, то комбінацію назвемо коректною, в іншому випадку некоректною, тоді Можна предсавити граф із 2*length(F) вершин. Тепер застосувавши алгоритм дейстри (з деякими модифікаціями: йдемо тільки по коректним вершинах і при переправі в лодці не було змов) для знаходження мінімального маршрту між вершиною F[0] і F[length(A)] ми отримаємо розвязок задачі, де F[0] - пуста множина, F[length(A)] - множина, яка містить всі N елементів.
Поза форумом
xXx написав:
а сложность?
У меня перебор+Дейкстра. Сложность O((2^N)*N^2)
Поза форумом
O((2*length(F)^2)). Якщо оптимізувати, то при найнесприятливому випадку O((2length(F))*924). length(F) не перевищує 5000.
Поза форумом
В мене прога працює макс. 0.4 сек.
Поза форумом
Для тесту 12 1 1 1 1 1 1 1 1 1 1 1 1 0 ? Круто.
Поза форумом
Народ, киньте тестов плиз.
Поза форумом
Сторінок: 1