Редагувати: Я незабаром опублікую новішу версію цього питання 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