2
块分区字符串
灵感。 考虑一个l由数字组成的列表。i在列表的索引处定义一个块操作,l该操作是从iin 开始移动3个连续元素的动作l进行到底。 例: l, i (1-indexing) -> l (after applying block operation at index i) [1,2,3,4,5], 1 -> [4,5,1,2,3] [1,2,3,4,5,6,7], 3 -> [1,2,6,7,3,4,5] 给定一个仅包含0和1的列表,您的难题是仅使用块操作对其进行分区,以使零在前面,而在后面在后面。输出应该是索引在列表中应用的顺序。 因为这是不可能的 [1,0,1,0],所以保证列表长度至少为5。 测试用例(1-索引) (还有其他有效的输出) [1,1,1,0,0] -> [1] [0,1,0,1,0] -> [1,2,1,1] [0,0,0,1,1,1,0,0,0] -> [4] 使用此脚本可以生成更多的测试用例。(仅输入该rplc ' ';','部分用于ř Ë PL一个Ç ê空间与输出逗号) 获奖标准 代码挑战是主要的制胜法宝,而最快的代码是决胜局。尤其是: 以测试用例(n_elem= 500,random_seed= {secret value})的最短输出长度(最少块操作数)的解决方案为准。您应该能够使用测试用例(n_elem= …