挑战
给定一个字符正方形矩阵(可单字节打印的ASCII字符),请沿相反方向旋转矩阵的每个“环”。
让我们举个例子:
1 2 3 4 5
6 7 8 9 A
B C D E F
G H I J K
L M N O P
然后,将最外面的环顺时针旋转90度,如下所示:
1 2 3 4 5 L G B 6 1
6 A M 2
B F => N 3
G K O 4
L M N O P P K F A 5
第二个环逆时针旋转90度:
7 8 9 9 E J
C E => 8 I
H I J 7 C H
最终的环顺时针旋转90度,但是由于它是单个数字(在我们的示例中为字母),因此它实际上并没有受到影响。
最终结果是:
L G B 6 1
M 9 E J 2
N 8 D I 3
O 7 C H 4
P K F A 5
如果矩阵的边长均匀,则最里面的环将是2x2的正方形,并且仍应旋转。
输入项
任何合理的标准格式的列表清单。例如,可以使用换行符分隔的空格分隔的字符串或空格分隔的字符串的列表,但是不可接受使用矩阵周围的作为环的值的列表。字符不一定是唯一的。
输出量
任何合理的标准格式的列表清单。与输入相同的规则。
测试用例
1 2 3 7 4 1
4 5 6 => 8 5 2
7 8 9 9 6 3
1 2 3 4 5 6 Y S M G A 1
A B C D E F Z E K Q W 2
G H I J K L => ! D O I V 3
M N O P Q R @ C P J U 4
S T U V W X # B H N T 5
Y Z ! @ # $ $ X R L F 6
学分
相关
—
rahnema17年
@ rahnema1是的,我记得那个帖子。这篇文章的灵感主要来自那个;我会相信的。谢谢!
—
HyperNeutrino
@ Mr.Xcoder糟糕。您说得对,谢谢。
—
HyperNeutrino
@HyperNeutrino我们可以将矩阵的维数作为输入的一部分吗?
—
Uriel
示例中的所有字符都是唯一的。会一直这样吗?
—
丹尼斯,