编程拼图和代码高尔夫

编程益智爱好者和代码高尔夫球手的问答

15
为Mark Watney创建一个ASCII至十六进制表
受此SciFi.SE问题的启发。 背景(轻微扰流): 在电影《火星人》中,主角马克·沃特尼(Mark Watney)使用ASCII表查找ASCII字符的十六进制值,以便他可以尝试与地球通信。* 挑战 没有输入,则完全按照以下方式输出以下ASCII表: Dec Hex Dec Hex Dec Hex Dec Hex Dec Hex Dec Hex Dec Hex Dec Hex 0 00 NUL 16 10 DLE 32 20 48 30 0 64 40 @ 80 50 P 96 60 ` 112 70 p 1 01 SOH 17 11 …

3
满天星斗的星际高尔夫
Starry是一种有趣的深奥编程语言,其中的代码仅+*.,`'由每个字符所代表的实际命令由其前面的空格数确定。即使对于高尔夫球的固定输出挑战,这也使它变得棘手,因为不同的命令可以占用非常不同的字节数。特别是,数字文字具有一元表示形式,因此有必要通过对较小的数字进行运算来建立较大的数字。 因此,这个挑战是关于编写可以打高尔夫球这样的Starry程序的程序。 星空如何运作? (在esolangs上未指定一些细节,因此我将继续使用Ruby解释器的行为。) Starry是一种基于堆栈的语言,具有一堆任意精度的整数值(最初为空)。 唯一有意义的字符是: +*.,`' 和空格。所有其他字符将被忽略。每个空格序列后跟那些非空格字符之一代表一条指令。类型指令的依赖于非空格字符和数字的空格。 这些说明是: Spaces Symbol Meaning 0 + Invalid opcode. 1 + Duplicate top of stack. 2 + Swap top 2 stack elements. 3 + Rotate top 3 stack elements. That is, send the top stack element two positions down. [... 1 2 3] …
25 metagolf  stack  starry 

15
制作独角兽口译员
最近,我做了一个错字,我写了unicorn而不是unicode,我做了任何普通人都会做的事,并且用它做了一个esolang。在此挑战中,您将编写Unicorn解释器。 因为Unicorn程序太长了,所以您必须编写一个简短的解释器来弥补这一点。 例 这些是转译的结果,而不是程序应输出的实际解释结果 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 1 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐🐐 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄🦄 …

30
画彩虹
挑战很简单:以尽可能少的字节绘制彩虹 彩虹的规格如下: 该图形必须恰好为400像素宽和200像素高(如果要单个中心像素,则可以选择401x201) 红色环应触摸图形的所有边界(外部半径= 200像素) 所有环应具有相同的宽度(10像素) 紫罗兰色环的内半径应为130像素 弓应该是完美圆的上半部分 背景应为白色(也可以使用透明) 该图不应有边框(如果无法压制边框,则为例外) 不允许使用内置的彩虹制作功能! 彩虹中将使用以下颜色: 这是代码高尔夫,所以最短的代码以字节为单位获胜! 例: 相关,但不同!

9
对字符串取消括号
给定正确括号化的字符串作为输入,输出匹配括号内(或所有括号外)的所有非空子字符串的列表,并删除嵌套括号。每个子字符串应为完全相同的匹配括号中的字符序列。子串应按深度顺序列出,而相同深度的子串应按它们在字符串中出现的顺序列出。假定输入总是正确地加上括号。 您可以假定输入仅包含小写的ASCII字母和括号。 您的答案应该是一个函数,当给定一个字符串时,它返回一个字符串列表。 例子: 'a(b)c(d)e' -> ['ace', 'b', 'd'] 'a(b(c)d)e' -> ['ae', 'bd', 'c'] 'a((((b))))' -> ['a', 'b'] 'a()b' -> ['ab'] '' -> [] 'a' -> ['a'] '(((a(b)c(d)e)f)g)h' -> ['h', 'g', 'f', 'ace', 'b', 'd'] 'ab(c(((d)ef()g)h()(i)j)kl)()' -> ['ab', 'ckl', 'hj', 'efg', 'i', 'd'] 最少的字节数获胜。

20
细菌膨胀
1通过活菌标记的细菌菌落9生活在一段等距的细胞中,空细胞表示为0 0 0 2 0 0 0 1 2 0 0 3 3 0 0 每隔一秒钟,每个菌落就会扩散到相邻的空细胞中。如果两个菌落同时到达一个空细胞,则标记较大的菌落将其带走。 t=0: 0 0 2 0 0 0 1 2 0 0 3 3 0 0 t=1: 0 2 2 2 0 1 1 2 2 3 3 3 3 0 t=2: 2 2 2 …

14
代码机器人4:函数式编程
嘘,这真的是第四吗?对于所有老用户来说,核心挑战是相同的,但是我们使用Java而不是自定义语言。如果您有兴趣,这里是过去三个 CodeBot 挑战。 CodeBots的目标是使您的机器人尽可能地具有病毒性。每个漫游器都带有一个Flag,并且您需要确保您的Flag 到处都是。 API 漫游器将遵循标准化的“协议”,而漫游器将同步执行以下步骤: IPAddress selectMessageRecipient() 允许机器人选择他想向其发送“友好”消息的对象。 Message sendMessage() 允许漫游器选择他将发送的消息的内容。 processMessage(IPAddress, Message) 机器人收到的每条消息都会被调用。 FunctionType selectFunctionToBlock()阻止当前回合中的函数被覆盖。请参阅步骤7。 IPAddress selectAttackTarget()允许漫游器选择他想要DDOS的对象。如果该机器人同时被3个机器人作为目标,则DDOS攻击成功。如果攻击成功,则每个攻击者都可以执行步骤6和7。 readData(ReadonlyBot) 允许机器人读取易受攻击的机器人上存储的数据。 FunctionType selectFunctionToReplace()是挑战的关键。您可以选择1个功能(在此列出的8个功能中)从您的机器人复制到他们的机器人。然后,将调用您的函数而不是它们的函数。如果多个机器人选择了相同的功能,则随机将成功。 String getFlag()在游戏结束时被调用,并且应返回您提交的唯一字符串。您的函数应始终返回相同的字符串。游戏结束时带有最多标记的提交将获胜。 存储 您有3种存储形式,一个AddressBook,一个Log和一个Variables。 这些存储形式是函数运行所在的bot的本地存储(因此,如果函数被复制,则每个对象的内容将有所不同)。所有这些对象都可以手动修改或清除。要获取这些对象,您的班级中有一个吸气剂(例如getLog())。 该通讯录存储列表ip地址,每一个地址类型,它可以让你在不同类型的地址进行分类。 AddressBook将始终至少包含1个地址(如果清除该地址,则会添加一个随机的地址)。不允许清除地址簿以获取多个IPAddress。 该日志存储有关的行动采取的所有行动,以及数据的列表。它还包括所有成功攻击的历史记录(尽管您不知道它们重写了哪些功能) 该变量对象允许你存储连接到一个字符串名称字符串变量。在游戏开始时,变量将包含一个变量,ID其中包含一个随机生成的ID,该ID对于您的机器人类型是唯一的。 您还具有其他访问功能: int getTurnNumber() 返回当前转弯的整数 bool functionsMatch(ReadonlyBot, FunctionType) 测试以查看ReadonlyBot的函数是否与您的函数匹配 IPAddress personalAddress() 返回您的IPAddress 如何实施 您可以从Github获取代码 将您的漫游器添加到该\bots文件夹,然后在其中添加对您的漫游器的引用controller\CodeBotFactory.java 您的漫游器必须扩展codebots.bot.CodeBot或codebots.bots.DefaultCodeBot 如果要运行控制器,则需要Java 8。 …

3
在W×H的数字网格中找到最大的N位数
编写一个程序或函数,该程序或函数需要一个正整数N和一个宽度为W,高度为H(也是正整数)的十进制数字网格(0到9)。您可以假设N小于或等于W和H中的较大者。 打印或返回在网格中水平或垂直出现的最大连续N位数字,以正常阅读顺序或相反顺序书写。 不考虑数字的对角线。 网格不环绕,即不具有周期性边界条件。 例如3×3网格 928 313 049 将具有9作为输出为N = 1,94作为输出为N = 2,并且940作为输出为N = 3。 4×3网格 7423 1531 6810 将具有8作为输出为N = 1,86对于N = 2,854对于N = 3,并且7423对于N = 4。 3×3网格 000 010 000 1对于N = 1,10对于N = 2和N = 3 ,将具有输出(010对于N = 3也有效)。 1×1网格 0 0N = 1的输出。 您可以采用任何方便的合理格式输入。例如,网格可以是换行符分隔的数字字符串,多维数组或数字列表列表等。如果输出零是网格的一部分,则允许在输出中使用前导零。 这是代码高尔夫球,因此以字节为单位的最短代码胜出,但我还将奖励布朗尼点(即更有可能的投票),以表明他们的算法在计算上是有效的。
25 code-golf  math  number  grid 

17
计算+1个素数
定义的自然数p是一个1素的自然数的Ñ如果p是素数和标准二进制表示(即,无前导零)的p可以通过添加(即,在前面加上,附加或插入)来获得n的标准二进制表示形式的单个1。 例如,17的二进制表示为10001 2。可以通过添加来形成不同的自然数1至10001 2是110001 2或49,101001 2或41,100101 2或37,和100011 2或35。 其中41和37是质数,因此17具有两个+1质数。 任务 编写一个接受严格正整数n作为输入并打印或返回n的不同+1素数的程序或函数。 输入和输出必须是整数或其十进制或一进制字符串表示形式。 适用标准代码高尔夫球规则。 测试用例 Input: 4 Output: 0 Input: 1 Output: 1 Input: 17 Output: 2 Input: 33 Output: 3 Input: 553 Output: 4 Input: 3273 Output: 5 Input: 4145 Output: 6 Input: 4109 Output: 7 Input: 196869 Output: 8

2
哪种语言最短?
创建一个程序,使用带有至少20个答案的code-golf -tag 查找最近的50个挑战。然后,提取每个挑战中每种语言的分数。如果使用相同语言的答案不只一个,请计算所有分数。此后,请选择排名前20位的最常用语言,并输出包含语言名称,答案数量,平均字节数和中位数字节数的列表。该列表应按答案数降序排列。 您必须考虑大写字母的变化(例如:Matlab = MATLAB)。 在具有许多不同版本号的语言(例如Python)中,将它们视为唯一的语言,因此: Python != Python 2 != Python 2.7 != Python 3.x 输出示例(输出格式是可选的): cJam, 66, 12.4, 8.5 Pyth, 58, 15.2, 19 Ruby, 44, 19.2, 22.5 Python, 34, 29.3, 32 Python 2.7, 22, 31.2, 40 ... ... Java, 11, 115.5, 94.5 必须支持的标题格式: 以# Language name,或开头#Language name …

30
我的名字是官方的吗?
介绍 正如ToonAlfrink所说:“我认为这里没有足够的简单问题供初学者尝试!” 因此任务非常简单。给定一个字符串,无论名称是否为正式名称,都输出一个true或false值。 如果名称是单个标题大小写的单词,则该名称为“正式”,即: 如果第一个字母大写(不是官方:adnan) 如果其他字母不大写(不是官方:AdNaN) 如果名称中不包含任何非字母字符(不是官方名称:Adnan123,,Adnan!) 如果名称仅由一个单词组成(不是官方名称:Adn an,Adn An) 如果名称包含多个字符(不是官方名称A:) 规则 您可以提供功能或程序 这是代码高尔夫球,因此以最少的字节提交为准! 注意:为简化起见,在此挑战中,像Mary-Ann这样的名字不是官方的。 假设名称中没有前导空格。 假设名称中仅使用可打印的ASCII字符(32-126) 测试用例 Input: Adnan Output: True Input: adnan Output: False Input: AdnaN Output: False Input: Adnan123 Output: False Input: Adnan Adnan Output: False Input: A Output: False Input: Mary-Ann Output: False 排行榜 显示代码段 /* …
25 code-golf  string 

20
输出一定频率的声音
这是一个相当简单的挑战,但是我找不到任何与之非常相似的问题。面临的挑战是使用STDIN或同等频率获取一个频率,然后输出与该频率匹配的音调,以Hz为单位,持续5秒钟。例如 Input: 400 Output: (a tone of 400 Hz with a duration of 5 seconds) 规则 输入必须通过STDIN或您的语言的等效输入 答案必须是完整的程序 可以使用内建函数 频率范围为50-5000 Hz 输出必须播放5秒钟 输出必须为正弦波形式 测试用例 输入: 440 输出: 输入: 200 输出: 输入: 4000 输出: 这并不是要找到具有最短解决方案的语言(有些地方空程序会解决问题),而不仅仅是找到每种语言的最短解决方案。因此,没有答案将被标记为已接受。 与我们通常的规则不同,即使使用的语言(或语言版本)比此挑战新,也可以使用。专门针对此挑战提交0字节答案的语言是公平的游戏,但并不是特别有趣。 请注意,必须有一个解释器,以便可以测试提交。允许(甚至鼓励)自己为以前未实现的语言编写此解释器。 还要注意,语言确实必须满足我们编程语言的通常标准。 目录 这篇文章底部的Stack Snippet会根据答案a)生成目录,a)作为每种语言最短解决方案的列表,b)作为整体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language Name, N bytes N您提交的文件大小在哪里。如果您提高了分数,则可以通过打败旧分数来保持标题。例如: ## Ruby, <s>104</s> …
25 code-golf  audio 

6
大数字
在尝试解答我的几个答案时,我需要用尽可能少的字符编写大整数。 现在,我知道执行此操作的最佳方法:我会让您编写此程序。 挑战 编写一个程序,当给定一个正整数时,输出一个程序,将其打印到stdout或等效程序。 输出程序不必使用与创建者相同的语言。 输出最多为128个字节。 您可以接受来自stdin或等效输入的输入(不是功能输入) 您可以将结果程序输出到stdout或等效程序。 输出的数字必须为十进制(以10为底) 计分 您的分数等于程序无法编码的最小正整数。 得分最高的条目将获胜。

7
跟踪清单到时间表
介绍 当有人将您喜欢的相册上传到YouTube时,您是否不讨厌它,但是说明中仅包含曲目列表?像这样: 1. Everything in Its Right Place - 4:11 2. Kid A - 4:44 3. The National Anthem - 5:50 4. How to Disappear Completely - 5:55 5. Treefingers - 3:42 6. Optimistic - 5:16 7. In Limbo - 3:31 8. Idioteque - 5:09 9. Morning Bell - 4:29 …
25 code-golf  string  date 

12
FizzBu​​zz-ish字符串匹配器
假设您有一个像这样的字符串: abaabbbbbaabba 计算指定字符在输入字符串中出现的次数,但前提是该字符仅连续出现一次。例如,如果字符是a, abaabbbbbaabba ^ x x ^ 总数为2(aa因为a连续出现两次,所以不会计数)。 这与FizzBu​​zz有什么关系? 如果字符连续出现3次(或3的倍数),或连续出现5次(或5的倍数),则计数器递减。如果它是3 倍和 5倍的倍数,则计数器仍会递增。请记住,如果字符仅连续出现一次,则计数器也会增加;如果字符连续出现其他次数,则计数器将被忽略(上述情况除外)。 回顾一下,如果要匹配的字符串是a, input counter (explanation) a 1 (single occurence) aaa -1(multiple of 3) aaaaa -1(multiple of 5) aaaaaaaaaaaaaaa 1 (multiple of 15) aa 0 (none of the above) aba 2 (two single instances) aaba 1 (one single occurence(+1) …
25 code-golf  string 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.