Редагувати: Я незабаром опублікую новішу версію цього питання meta-golf
. Залишайтеся занадто сухими!
Редагувати №2: Я більше не оновлюю виклик, але залишатиму його відкритим. meta-golf
Версія доступна тут: /codegolf/106509/obfuscated-number-golf
Фон:
Більшість цифр можна записати лише з 6 різних символів:
e
(Константа Ейлера)-
(Віднімання, а не заперечення)^
(Експоненція)(
)
ln
(Природний логарифм)
Наприклад, ви можете перетворити уявне число i
за допомогою цього рівняння:
(e-e-e^(e-e))^(e^(e-e-ln(e^(e-e)-(e-e-e^(e-e)))))
Мета:
З огляду на будь-яке ціле число k
будь-якими розумними засобами, виведіть найкоротше можливе подання цього числа, використовуючи лише ці 6 символів.
Приклади:
0 => "e-e"
1 => "ln(e)"
2 => "ln(ee)"
// Since - cannot be used for negation, this is not a valid solution:
// ln(e)-(-ln(e))
-1 => "e-e-ln(e)"
Примітки:
- Кінцеві дужки зараховуються до загальної кількості символів.
ln(
вважається лише 1 символом.- Все інше вважається 1 символом.
n^0=1
- Діє порядок операцій
- Дужки множення є прийнятним, наприклад
(2)(8)=16
,2(5)=10
іeln(e)=e
. ln e
ви не дійсні, ви повинні зробитиln(e)
ln(eeee)^ln(ee)
є коротшим, ніж ln(eeeeeeeeeeeeeeee)
для 16
ln(ee...e)
) - найкращий спосіб зобразити позитиви. Редагувати: ні, його немає.ln(e^(ln(eeeee)ln(eeee)))
краще на 20