11
解释+ p代码
受最近对另外两种字符语言的热潮启发, ;# 介绍 根据社区的共识,此站点上可接受的答案必须使用至少以下语言: 可以确定自然数是否为素数 可以将两个自然数相加 可以代表数字的列表/元组,以及单个数字 为了这个挑战,我们将忽略#3。因此,可以在此站点上使用的最简单的语言(忽略#3)将只有两个命令,isPrime和add。为了便于解释和字节计数,让我们分配isPrime给p和add对+。因此,我们有了自己的语言+p。您的挑战是解释一些+p代码。 行为 +该add指令取两个数字,将它们相加,然后输出结果 p所述isPrime指令需要一个单一的数,并将其输出1它是否为素数,并且0,如果它不是 规则 您必须编写一个给定字符串的程序/函数,将该程序/函数解释为+p代码。您可以假设格式正确的输入(仅包含+和p字符)。 输入是灵活的。您可以将程序作为字符串,字符数组,代码点的整数数组等形式使用。正在解释的程序的输入也很灵活。您可以采用整数数组,并在程序执行时用完条目,或者每个指令(+和p)都可以单独请求输入。您可能会假设每条指令都有足够的输入。确保输入由0到200之间的数字组成(但理论上,您的算法应适用于任何正整数输入)。 输出也很灵活。您可以打印结果,将它们作为列表返回,返回包含所有结果的字符串,等等。如果以字符串形式打印或返回,则输出必须用一些非数字的,一致的分隔符分隔,例如换行,标签,空格或,字符。您可能有尾随分隔符或一些尾随空格。另外,p的输出可能是您使用的语言所定义的任何真或假值,而不是1或0。 解释器可能会终止也可能不会终止(如果它是一个完整的程序),但是在解释完所有指令之后必须停止打印。(它无法永远继续打印分隔符或空字符等)。 默认情况下,这些标准漏洞是禁止的 这是代码高尔夫球,用最少的字节数获胜的答案 测试用例 Program: + Input: [56, 50] Output: 106 ---------------------------------- Program: p Input: [12] Output: 0 ---------------------------------- Program: p Input: [13] Output: 1 ---------------------------------- Program: ++ Input: [172, 120, 33, 58] Output: 292 …