...或环形摩尔社区
由于正整数h
,w
和一个非负整数i
,返回所有围绕着指数i
。
您将假定一个矩阵,该矩阵由元素的h
行w
组成,从左上角的最低编号到右下角的最高编号,并以任何合理的格式返回将要使用的索引列表包围索引i
。这个矩阵是一个圆环(环绕每个边缘的无限图)。
例如,输入h=4
和w=4
,将得出矩阵:
0 1 2 3
4 5 6 7
8 9 10 11
12 13 14 15
但更具体地说:
15 12 13 14 15 12
3 0 1 2 3 0
7 4 5 6 7 4
11 8 9 10 11 8
15 12 13 14 15 12
3 0 1 2 3 0
因此如果i
为was 0
,则需要返回15, 12, 13, 3, 1, 7, 4, 5
(从0开始)。
例子
从0开始:
h w i Expected result
4 4 5 0, 1, 2, 4, 6, 8, 9, 10
4 4 0 15, 12, 13, 3, 1, 7, 4, 5
4 5 1 15, 16, 17, 0, 2, 5, 6, 7
1 3 2 1, 2, 0, 1, 0, 1, 2, 0
1 1 0 0, 0, 0, 0, 0, 0, 0, 0
基于1:
h w i Expected result
4 4 6 1, 2, 3, 5, 7, 9, 10, 11
4 4 1 16, 13, 14, 4, 2, 8, 5, 6
4 5 2 16, 17, 18, 1, 3, 6, 7, 8
1 3 3 2, 3, 1, 2, 1, 2, 3, 1
1 1 1 1, 1, 1, 1, 1, 1, 1, 1
规则
- 您的答案可能是0或1索引,请选择。
- 您可以假设
i < h * w
(或i <= h * w
针对1个索引的答案)。 - 您可以假设
i >= 0
(或i > 0
针对1个索引的答案)。 - 返回值的顺序并不重要,只要仅包含八个期望值即可。
- 禁止出现标准漏洞。
- 这是代码高尔夫球,所以每种语言的最短答案就是成功!
感谢@Conor O'Brien提供更多技术性冠冕堂皇的东西,以及@ngm提供更多测试用例!