首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >打印一个五边形长方形

打印一个五边形长方形
EN

Code Golf用户
提问于 2015-11-09 22:28:42
回答 5查看 1.6K关注 0票数 15

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

该矩形可能有任何尺寸和任何方向,但所有12个五元数必须正确使用一次,所以它将有面积60。每个不同的五子座必须由不同的可打印ASCII字符组成(您不需要使用上面的字母)。

例如,如果您选择输出这个20×3的戊米诺矩形解:

您的程序的输出可能如下所示:

代码语言:javascript
复制
00.@@@ccccF111//=---
0...@@c))FFF1//8===-
00.ttttt)))F1/8888=-

或者,您可能会发现更容易使用这个6×10的解决方案:

代码语言:javascript
复制
000111
203331
203431
22 444
2   46
57 666
57769!
58779!
58899!
5889!!

任何矩形解决方案都可以,您的程序只需要打印一个。(输出中的尾换行符很好。)

这个伟大的网站有大量用于各种矩形维度的解决方案,可能值得浏览它们,以确保解决方案尽可能短。这是密码-高尔夫,最短的答案以字节为单位获胜。

EN

回答 5

Code Golf用户

回答已采纳

发布于 2015-11-10 11:12:36

Pyth,37字节

代码语言:javascript
复制
jc4.HC"&f3ªªwril3:[·)ÌDU[r)ÌDA»

游行示威

使用非常简单的方法:使用十六进制字节作为数字。转换成一个十六进制数字,256基数编码。上面的魔法线。要解码,使用Pyth的基本256解码器功能,转换为十六进制,分裂成4个块,并加入换行符。

票数 1
EN

Code Golf用户

发布于 2015-11-09 23:42:28

CJam (44字节)

以xxd格式提供,因为它包含控制字符(包括一个raw选项卡,它对MarkDown的使用非常糟糕):

代码语言:javascript
复制
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 

它解码成某种类似于……

代码语言:javascript
复制
"MAGIC STRING"256b5b3/_,,.{2/'A+f+}zN*

略显松散的在线演示不包含控制字符,因此可以很好地使用浏览器URI解码库函数。

基本原则是,由于没有超过5行,所以我们可以从行号的线性函数(实际上,在基5中,尽管我还没有试图确定是否总是这样)对偏移量进行编码。

票数 5
EN

Code Golf用户

发布于 2015-11-10 09:14:30

J,49字节

代码语言:javascript
复制
u:64++/\|:3#.inv 1377859090 1567813024 1337683230

您可以以垂直相邻字母之间的最大增量为2的方式选择字母。我们利用这个事实在base3中对垂直增量进行编码。在此之后,我们创建运行和并添加一个偏移量,以获得字母的ASCII代码。

绝对是高尔夫的。(我还没有找到一种输入扩展精度base36数字的方法,但是简单的base36应该只节省3个字节。)

输出:

代码语言:javascript
复制
AAA
ABA
BBB
DBC
DCC
DCC
DEE
DFE
FFE
FGE
FGG
GGH
HHH
IIH
JII
JJI
JKK
JKL
KKL
LLL

在网上试试。

票数 4
EN
页面原文内容由Code Golf提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codegolf.stackexchange.com/questions/63483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档