首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >给我建个城市

给我建个城市
EN

Code Golf用户
提问于 2017-06-27 11:27:01
回答 16查看 4.8K关注 0票数 36

编码器总是试图把数组压平成枯燥的一维实体,这让我很难过。

你的任务是解开任意字符串,输出一个可爱的城市天景。

考虑一下字符串:aaabbbbbccqrrssstttttttPPw

看起来这样好多了:

代码语言:javascript
复制
            tt
            tt
  bb        tt
  bb        tt
aabb      sstt
aabbcc  rrssttPP
aabbccqqrrssttPPww

(好的,是的,这些字母被复制,以使它看起来更像城市天际线)。

取一个输入字符串,复制匹配字符的每个部分(不一定是字母),并为我创建一个城市!

最短代码字节获胜。

实际上,我认为我已经确定了要求,但我要回答一些问题:

  • 一定是在地面上
  • 如果你想要的话,你可以有额外的天空(前导空白行,周围空白处)--但不能在建筑物之间。
  • 字母可以在字符串中重用(相同的体系结构,不同的位置)
  • 这些字母被认为是ASCII,但是那些支持额外编码(UTF8等)的人会有更多的天赋。
EN

回答 16

Code Golf用户

发布于 2017-06-27 11:36:46

05AB1E,6字节

代码语言:javascript
复制
γ€DζR»

在网上试试!

在比挑战更新的版本中,添加了ζ作为.Bø的替代品。

05AB1E,8字节

代码语言:javascript
复制
γ€D.BøR»

解释:

代码语言:javascript
复制
γ            Convert into a list of consecutive equal elements
 €D          Duplicate each element
   .B        Squarify; pad each element with spaces so that they are the length of the longest element
     ø       Transpose
      R      Reverse (otherwise the city would be upside-down)
       »     Join by newlines

在网上试试!

票数 11
EN

Code Golf用户

发布于 2017-06-27 11:36:59

果冻,9字节

代码语言:javascript
复制
Œgx'2z⁶ṚY

在网上试试!

解释:

代码语言:javascript
复制
Œgx'2z⁶ṚY  Main Link
Œg         Group runs of equal elements
  x        Repeat
   '              the lists
    2                       twice without wrapping
     z⁶    Zip (transpose), filling in blanks with spaces
       Ṛ   Reverse the whole thing so it's upside-down
        Y  Join by newlines
票数 6
EN

Code Golf用户

发布于 2017-06-27 12:04:15

CJam,23字节

代码语言:javascript
复制
qe`::*:__:,:e>f{Se[}zN*

在网上试试!

解释:

代码语言:javascript
复制
qe`::*:__:,:e>f{Se[}zN* Accepts (multi-line?) input
q                       Take all input
 e`::*                  Split into groups of equal elements
      :_                Duplicate each
        _:,:e>          Push maximal length without popping
              f{Se[}    Left-pad each to that length with space strings (NOT space chars, although not a problem here)
                    z   Zip
                     N* Join with newlines
票数 6
EN
页面原文内容由Code Golf提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

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

复制
相关文章

相似问题

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