首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C4_4反射!

C4_4反射!
EN

Code Golf用户
提问于 2019-10-04 12:32:04
回答 5查看 543关注 0票数 8

在这个挑战中,您的任务是输入一个矩形ASCII模式(您可能假设只需要处理可打印的字符,并且可能假定一个尾换行符),C4_4符号化,并输出它。

这里,C4_4对称的意思是在角字符拐角处90度旋转下的对称.相应的“对称化”过程是按顺时针方向复制和旋转90度,然后将所有四个副本放在一起。对于精确的安排,您可以查看测试用例。

测试用例

代码语言:javascript
运行
复制
Input:
asdf
jkl;

Output:
    ja
    ks
asdfld
jkl;;f
  f;;lkj
  dlfdsa
  sk
  aj


Input:
.O.
..O
OOO

Output:
.O.O..
..OO.O
OOOOO.
.OOOOO
O.OO..
..O.O.


Input:
gc
oo
ld
fe

Output:
  gc    
  oo    
  ldflog
  feedoc
codeef  
golfdl  
    oo  
    cg  
EN

回答 5

Code Golf用户

发布于 2019-10-04 12:38:08

木炭,6字节

代码语言:javascript
运行
复制
A⟲C²⁴⁶

在网上试试!链接是详细的代码版本。说明:隐式打印输入,执行旋转,表示保持副本,²⁴⁶表示45度旋转的次数。(木炭默认为按需要在右下角旋转。)

票数 7
EN

Code Golf用户

发布于 2019-10-04 13:03:51

Python 3,193个字节

代码语言:javascript
运行
复制
def f(s):q=len(s[0])-len(s);s=[[" "]*len(s[0])]*q+s;s=[[" "]*-q+l for l in s];j=lambda a,b:[x+y for x,y in zip(a,b)];r=lambda x:[*map(list,zip(*x[::-1]))];return j(s,r(s))+j(r(r(r(s))),r(r(s)))

在网上试试!

票数 4
EN

Code Golf用户

发布于 2019-10-05 11:32:45

红色,217个字节

代码语言:javascript
运行
复制
func[a][n: max(l: length? a)length? a/1
p: copy""insert/dup p" "n
loop n - l[insert a copy p]forall a[pad/left a/1 n]repeat y n[repeat x n[append
a/:y a/(n - x + 1)/:y]]repeat y n[append a reverse copy a/(n - y + 1)]]

在网上试试!

返回字符串列表。

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

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

复制
相关文章

相似问题

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