Вступление
Почти все знакомы с проблемой коммивояжера (TSP). Задача состоит в том, чтобы, учитывая список N
городов, найти минимальный гамильтонов цикл, то есть кратчайший путь, который посещает каждый город и возвращается к началу полного круга. Это не то, о чем этот вызов. Эта задача состоит в том, чтобы реализовать Чак Норрис решения для ТСПА:
Чак Норрис
O(1)
вовремя решил проблему с коммивояжером : разбил продавца на N штук; пинайте каждую часть в другой город.
Вызов
Чтобы решить TSP таким образом, нам нужен достаточно надежный продавец, который не будет уклоняться от легкомыслия, такого как расчленение; ряд городов для посещения; набор продуктов для продажи; конкретный метод расчленения; и расчет для оценки.
Спецификация
- Города
N
количество сайтов, которые посетит наш продавец
- коммивояжер
- Основная программа или функция
- Написано на языке
X
- С длиной мод
N
равной0
- Товары
- расчленение
- Нарезка продавца на
N
непрерывные куски равной длины - Каждая часть должна быть действительной функцией или программой на языке
X
- Нарезка продавца на
- Выход
- Когда выполнено, продавец должен вывести,
Chuck Norris
а нарезанные кусочки должны вывести отдельный продукт. - Допускается только дополнительный пробел
- Когда выполнено, продавец должен вывести,
- счет
- Длина
L
Продавца в байтах, деленная на количество городовN
, в квадрате. Score = L/(N*N)
- Наименьший счет выигрывает
- Пожалуйста, укажите 3 значащие цифры при публикации десятичного счета
- Длина
Примеры
- Этот продавец посещает 3 города так
N=3
и имеет длину 9 такL=9
. Таким образом, оценка для этого ответа будетS = 9 / (3 * 3) = 9/9 = 1
.- Обратите внимание, что продавец и каждый нарезанный кусок (всего их 3) должны быть действительными программами или функциями на одном языке.
Program -> Output
------- ------
aaaBBBccc -> Chuck Norris
aaa -> Helium
BBB -> Iridium
ccc -> Tennessine
N=4
иL=20
такS=20/16=1.25
Program -> Output
------- ------
aaaaaBBBBBcccccDDDDD -> Chuck Norris
aaaaa -> Hydrogen
BBBBB -> Cadmium
ccccc -> Mercury
DDDDD -> Iron
ElementData
Разрешены ли встроенные модули, подобные Mathematica ? (Я сомневаюсь, что это сэкономит много, но я не знаю.)