编写一个程序或函数,该程序或函数不需要输入,而是打印或返回由12个不同的五旬节组成的矩形的恒定文本描述:

该矩形可能有任何尺寸和任何方向,但所有12个五元数必须正确使用一次,所以它将有面积60。每个不同的五子座必须由不同的可打印ASCII字符组成(您不需要使用上面的字母)。
例如,如果您选择输出这个20×3的戊米诺矩形解:

您的程序的输出可能如下所示:
00.@@@ccccF111//=---
0...@@c))FFF1//8===-
00.ttttt)))F1/8888=-或者,您可能会发现更容易使用这个6×10的解决方案:
000111
203331
203431
22 444
2 46
57 666
57769!
58779!
58899!
5889!!任何矩形解决方案都可以,您的程序只需要打印一个。(输出中的尾换行符很好。)
这个伟大的网站有大量用于各种矩形维度的解决方案,可能值得浏览它们,以确保解决方案尽可能短。这是密码-高尔夫,最短的答案以字节为单位获胜。
发布于 2015-11-10 11:12:36
jc4.HC"&f3ªªwril3:[·)ÌDU[r)ÌDA»使用非常简单的方法:使用十六进制字节作为数字。转换成一个十六进制数字,256基数编码。上面的魔法线。要解码,使用Pyth的基本256解码器功能,转换为十六进制,分裂成4个块,并加入换行符。
发布于 2015-11-09 23:42:28
以xxd格式提供,因为它包含控制字符(包括一个raw选项卡,它对MarkDown的使用非常糟糕):
0000000: 2202 7e0d 8ef3 570d e085 e168 cf27 092c
0000010: a235 0c22 3235 3662 3562 332f 5f2c 2c2e
0000020: 7b32 2f27 412b 662b 7d7a 4e2a 它解码成某种类似于……
"MAGIC STRING"256b5b3/_,,.{2/'A+f+}zN*略显松散的在线演示不包含控制字符,因此可以很好地使用浏览器URI解码库函数。
基本原则是,由于没有超过5行,所以我们可以从行号的线性函数(实际上,在基5中,尽管我还没有试图确定是否总是这样)对偏移量进行编码。
发布于 2015-11-10 09:14:30
u:64++/\|:3#.inv 1377859090 1567813024 1337683230您可以以垂直相邻字母之间的最大增量为2的方式选择字母。我们利用这个事实在base3中对垂直增量进行编码。在此之后,我们创建运行和并添加一个偏移量,以获得字母的ASCII代码。
绝对是高尔夫的。(我还没有找到一种输入扩展精度base36数字的方法,但是简单的base36应该只节省3个字节。)
输出:
AAA
ABA
BBB
DBC
DCC
DCC
DEE
DFE
FFE
FGE
FGG
GGH
HHH
IIH
JII
JJI
JKK
JKL
KKL
LLL在网上试试。
https://codegolf.stackexchange.com/questions/63483
复制相似问题