Chỉnh sửa: Tôi sẽ sớm đăng một phiên bản mới hơn của câu hỏi này meta-golf. Ở lại toiled!
Chỉnh sửa # 2: Tôi sẽ không còn cập nhật thử thách nữa, nhưng sẽ để nó mở. Các meta-golfphiên bản có sẵn ở đây: /codegolf/106509/obfuscated-number-golf
Lý lịch:
Hầu hết các số có thể được viết chỉ với 6 ký hiệu khác nhau:
e(Hằng số của Euler)-(Phép trừ, không phủ định)^(Lũy thừa)()ln(Logarit tự nhiên)
Ví dụ: bạn có thể chuyển đổi số ảo ibằng phương trình này:
(e-e-e^(e-e))^(e^(e-e-ln(e^(e-e)-(e-e-e^(e-e)))))
Mục tiêu:
Cho bất kỳ số nguyên nào kthông qua bất kỳ phương tiện hợp lý nào, hãy đưa ra biểu diễn ngắn nhất có thể của số đó chỉ bằng 6 ký hiệu đó.
Ví dụ:
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)"
Ghi chú:
- Kết thúc số ngoặc đơn đối với tổng số lượng ký tự.
ln(chỉ được tính là 1 ký tự.- Mọi thứ khác được tính là 1 ký tự.
n^0=1- Thứ tự các hoạt động áp dụng
- Ngoặc nhân lên là chấp nhận được, ví dụ
(2)(8)=16,2(5)=10vàeln(e)=e. ln ekhông hợp lệ, bạn phải làmln(e)
ln(eeee)^ln(ee)ngắn hơn so ln(eeeeeeeeeeeeeeee)với 16
ln(ee...e)) là cách tốt nhất để miêu tả tích cực. Chỉnh sửa: không, không phải.ln(e^(ln(eeeee)ln(eeee)))tốt hơn cho 20