您面临的挑战是将输入文本转换为能输出文本的大脑代码。
教程取自这里有权限在这里
Brain-Flak具有两个堆栈,分别称为“左”和“右”。活动堆栈从左侧开始。如果弹出一个空堆栈,它将返回0。就是这样。没有其他变量。程序启动时,每个命令行参数都被压入活动堆栈。
Brain-Flak程序中唯一有效的字符是()[]{}<>
,并且必须始终保持平衡。函数有两种类型:Nilads和Monads。一个nilad是一个函数,0参数。这是所有的尼拉德人:
()
评估为一。[]
计算到当前堆栈的高度。{}
弹出活动堆栈。评估为弹出值。<>
切换活动堆栈。评估为零。
在评估它们时将它们串联在一起。因此,如果我们在活动堆栈的顶部有一个“ 3”,则此代码段:
()(){}
将评估到1 + 1 + active.pop()
将评估为5。
单子组采用一个参数,即一大堆Brain-Flak代码。这是所有单子:
(n)
在活动堆栈上按“ n”。[n]
评估为负数“ n”{foo}
虽然零不在堆栈的顶部,但请执行foo。<foo>
执行foo,但将其评估为0。
这些函数还将返回它们内部的值,因此
(()()())
将推3但
((()()()))
将两次推3 。
在{}
将评估所有运行的总和。因此,如果我们在堆栈的顶部有“ 3”和“ 4”:
{{}}
评估为7。
程序执行完毕后,将打印保留在活动堆栈上的每个值,并在它们之间使用换行符。其他堆栈上的值将被忽略。
规则
- 您可能会认为Brain-Flak正在以ascii格式运行。(
-A
) - 脑筋急转弯的代码一定不需要输入
- 所有标准规则均适用
- 对于TIO上最多1024个字节的任何输入,代码必须在1分钟内运行。(如果没有可用的TIO输出,请提供解释器,我将在我的机器上运行它(我的机器应该能够接近TIO))。
- 您必须支持任意长度的输入。
- 您可以从文件中获取输入。
- 不允许针对测试用例进行优化
- 确定性输出是必需的
- 程序不需要堆栈干净
测试案例(尝试使用这些代码,实际的评分文本将在发布挑战后的1-2周内发布)
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
The meaning of brain-flak is to flak your brain with pain.
`1234567890-=qwertyuiop[]\asdfghjkl;'zxcvbnm,./~!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:"ZXCVBNM<>?
To be, or not to be, that is the question:
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune,
Or to take arms against a sea of troubles
And by opposing end them. To die-to sleep,
No more; and by a sleep to say we die
<your brain-flak code here>
The fitness pacer test is a multi stage test. Avacado Avacado Avacadad Avacadad carrot.bat carrot.jar carrot.carrot Quack Quack Quack Quack Quack Quack Quack Quack Quack downgoat doawngoat down down gaot
This challenge came from a online program that turned text into brain-fuck. However brain-fuck has limitations and it is not nearly as cool as brain-flak. I really am looking forward to cool programs :) I am glad you took the time to read this and look forward to seeing your answer.
获奖
为了获胜,您必须给出每个测试用例给出的脑筋代码的总长度,该长度将在发布日期后的1-2周内发布。总长度最短者获胜。
注意!!!!!!:
这不是代码高尔夫,代码长度不会以任何方式影响您的最终成绩。制作清晰易读的代码受到赞赏。谢谢!
测试用例
<your brain-flak code here>
低于1000的第一个答案将被授予赏金。我不能再发布一天了,哎呀!没注意到这是多么新。