Lua代码高尔夫问题

我一直在测试这个代码高尔夫问题:https://www.spoj.pl/SHORTEN/problems/KAMIL/

我的答案已经缩减至55个字符:

for l in io.lines()do print(2^#l:gsub("[^TDLF]",""))end

现在,Lua中提交的最短解决方案是47个字符。我就是不能想出如何进一步缩小我的字数,这让我觉得很疯狂。有人能给我一个提示吗?我试过将io.read("\*a")用于消除循环,但没有帮助。

原文链接 https://stackoverflow.com/questions/4186598

点赞
stackoverflow用户129655
stackoverflow用户129655

Perl 5(28个字符)

糟糕的开始,我对Perl应该做得更好。但我很生疏。如果我能初始化

print 2**s/[TLDF]//g,$/for<>

我知道你想要Lua,但我注意到该网站允许除了Perl 6以外的所有语言。所以我想提交一个条目 :-)

2010-11-16 02:22:51
stackoverflow用户282536
stackoverflow用户282536

Lua (54 字符)

repeat print(2^#io.read():gsub('[^TDLF]',''))until nil

无法全部通过,所以可能有问题。

否则我花了一段时间试验 gsub 的第二个返回值;但你似乎总是会通过选择获得一个字符。

2010-11-24 16:47:48