给定非负整数数组,您的任务是仅保留其某些元素,如下所述。
假设数组为
[1, 3, 2, 4, 11, 5, 2, 0, 13, 10, 1]
。首先获取数组的第一个元素
n
。保留第一个n
元素并丢弃下一个元素(丢弃n+1
th)。新数组为[1, 2, 4, 11, 5, 2, 0, 13, 10, 1]
。然后,您在删除的元素后面抓取元素,并执行完全相同的操作。重新应用该过程,我们得到
[1, 2, 11, 5, 2, 0, 13, 10, 1]
重复此过程,直到到达数组范围之外/数组中没有剩余元素。我们停止,因为
11
它大于数组的长度。现在,您应该输出结果。
输入/输出可以任何标准形式获取/提供。该数组永远不会为空,并且将仅包含非负整数。禁止所有标准漏洞。
这是代码高尔夫球,因此以字节为单位的最短代码胜出!
测试用例
输入->输出 [1、2、3、4、5]-> [1、3、4] [6,1,0,5,6]-> [6,1,0,5,6] [1、2、3、2、4、11、5、2、0、13、10、1]-> [1、2、11、5、2、0、13、10、1] [2,2,2,2,2,2]-> [2,2] [1、2、3、1、2、3、1、2、3]-> [1、2] [3,1,2,4,0]-> [] *
*最后一个测试用例涉及0
,因此我决定将流程发布得更加清晰:
[3, 1, 2, 4, 0] --> [3, 1, 2, 0] --> [1, 2, 0] --> [1, 0] --> [0] --> [] )
2
在第一步中将其删除而不是3
?
[1, 2, 3, 1, 2, 3, 1, 2, 3]
n
”时,您总是从数组的开头开始保留n
元素吗?(正如我乍看之下)不是将n
元素保留在n
您要评估的第一个元素的位置吗?