伊斯德: 72 46个字符
这几乎是一个完美的选择。。。似乎有一种“语言”似乎恰好是数学高尔夫的意思:ised。它的语法混乱,因此代码很短(没有命名变量,只有整数内存插槽和许多通用的单字符运算符)。使用积分定义伽玛函数,我得到了80个看似随机的字符
@4{:.1*@+{@3[.,.1,99]^x:*exp-$3}:}@6{:@{$4::@5avg${0,1}>$2}$5:}@0,0@1,99;$6:::.
这里,存储槽$ 4是阶乘函数,存储槽$ 6二等分函数和存储槽$ 2预计将设置为输入(在获取此代码之前给出)。插槽$ 0和$ 1是等分边界。调用示例(假设上面的代码在文件中inversefactorial.ised
)
bash> ised '@2{556}' --f inversefactorial.ised
556
5.86118
当然,您可以使用内置功能!运算符,在这种情况下,您最多只能输入45个字符
@6{:@{{@5avg${0,1}}!>$2}$5:}@0,0@1,99;$6:::.
细心的,有时操作员的能力很奇怪。
编辑:记得内联函数而不是保存它们。用72个字符击败Mathematica!
@0,0@1,99;{:@{{:.1*@+{@3[.,.1,99]^x:*exp-$3}:}::@5avg${0,1}>$2}$5:}:::.
并使用!内置,您得到41。
一年过期更新:
我只是意识到这是非常低效的。击打至60个字符:
@0#@1,99;{:@{.1*@3[.,.1,99]^@5avg${0,1}@:exp-$3>$2}$5:}:::.
如果使用utf-8(Mathematica也这样做),我们将转到57:
@0#@1,99;{:@{.1*@3[.,.1,99]^@5avg${0,1}·exp-$3>$2}$5:}∙.
稍微不同的重写可以将其缩减为46(如果使用内置!则为27):
{:x_S{.5@3[.,.1,99]^avgx·exp-$3*.1<$2}:}∙∓99_0
如果可以将答案打印两次,可以删除最后两个字符。