Lua代码高尔夫问题

标签 lua

关闭。这个问题是off-topic .它目前不接受答案。












想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。

9年前关闭。




Improve this question




我一直在玩这个代码高尔夫问题:
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") 上工作以获得
摆脱循环,但它没有帮助。

最佳答案

Lua(54 个字符)

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

完成时出错,所以可能不行

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

关于Lua代码高尔夫问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4186598/

相关文章:

delphi - 如何从 Lua 调用的 Delphi 函数中获取结果

lua - 访问可变键时的元方法

Lua Pattern 匹配一个模式

lua - 如何执行 lua_pushstring 并避免内存不足 setjmp 异常

java - 如何获取java类中的Luaj函数参数名称?

lua - 在lua源代码中,为什么他们使用double而不是更通用的lua_Number?

lua - 为什么这个使用 self ":"的 Lua 函数不能被标记为 "local"而不得到 "' (' expected near ' :'"

c++ - 使用可变参数模板从 Lua 函数回调 (C api) 中提取参数

c++ - 将 C 函数转换为 Lua 函数

c++ - 使用 Lua 从 C++ 修改 XML 字符串