Вступление
"Muhuhuhahahah!" Безумный ученый смеется. "Ты пойман в ловушку в моей собственной маленькой игре!"
Перед вами смертельная яма змей, а позади вас бездонная пропасть. Выхода нет, ты застрял!
«В двух шагах от вас - яма со змеями, а в двух шагах от вас - пропасть. Но! Прежде чем двигаться, вы ДОЛЖНЫ записать последовательность шагов вперед и назад и отдать их мне. Но! Потому что я Я чувствую себя немного злым сегодня, я могу заставить вас сделать вместо каждого шага каждый n
шаг, n
который меньше длины вашей последовательности!
Выбирай мудро, сейчас.
Какое максимальное количество шагов вы можете сделать перед своей неминуемой смертью?
задача
Введенное выше вступление является искажением гипотезы расхождения Эрда , которая недавно была подтверждена (если вы хотите больше узнать об этом, перейдите к этому видео , написанному Джеймсом Граймом - я «украл» у него извращенный вопрос).
Ответ на введение - 11
шаги, но я не буду слишком углубляться в доказательство. Ответ, если расстояние между вами и двумя «опасностями» составляло 3
шаги, это 1160
шаги, хотя это еще не подтверждено должным образом.
Ваша задача состоит в том, чтобы создать программу, которая генерирует самую длинную последовательность шагов, которую вы можете достичь, для большего x
, где x
указано количество шагов между вами и двумя «опасностями». Ваша программа должна принимать x
и выводить правильную последовательность для этого x
.
Для целей этой задачи +
представляет собой шаг вперед и -
представляет собой шаг назад.
Итак, выход для входа 2
:
+--+-++--++
Что работает, независимо от того, n
что выберет безумный ученый. Для нашего вызова x = 5
.
ПРИМЕЧАНИЕ. Эта задача не является дублированием этой задачи или этой задачи , так как моя задача сосредоточена на выводе, а не на самом коде - другими словами, это не задача игры в гольф. Кроме того, эти проблемы основаны на том x = 3
, что уже имеет установленную верхнюю границу.
Правила:
- Вся ваша программа должна соответствовать вашему ответу. Однако, если он не подходит, предоставьте дополнительный репозиторий Github или что-то подобное.
- Вы можете обновить как свой ответ, так и свою программу, если вы можете получить более высокий балл за счет оптимизации своего кода - но при этом вы должны обновить все в списке ниже.
- В своем ответе вы должны иметь:
- Ваша программа целиком или ссылка на репозиторий GH, содержащий ваш код
- Количество сгенерированных шагов - это будет ваш окончательный счет .
- Вы также должны предоставить онлайн-версию последовательности в Pastebin или что-то подобное. Это так, чтобы мы могли проверить ваш ответ.
- Время последнего обновления вашего финального счета, поэтому мне не нужно проверять вашу историю
- Вы не можете жестко кодировать последовательности заранее.
- Ваша программа должна работать для всех
x
(гдеx
указано количество шагов между вами и ямой и пропастью), но вам нужно только указать счетx = 5
.
Ответ с наибольшим счетом выигрывает!
n
шаг, где n
любое число меньше размера вашей последовательности.
x=5
потребовало бы серьезного прорыва, который заслуживал бы публикации. Учтите, что максимум 1160 для x=3
был доказан и опубликован в 2014 году, а дальнейшие значения неизвестны. ,