给你一个包含一些正整数和零的数字列表,例如[3,2,1,0,5,6,4,0,1,5,3,0,4,2,8,0],它可以被分解为一些零终止的子列表,如[3,2,1,0] ,[5,6,4,0] …。
亲爱的霍格沃茨魔法师,你的的任务是:
- 首先,按照升序对每个子列表进行排序(不要对零排序,它总是在最后) ;
- 其次,按照所有子列表的和值进行排序(也是升序)
结果及注意事项:
- 返回结果是列表
- 如果某些子序列具有相同的和值,则按照它们的原始顺序对它们进行排序
难度:中等
来源:codewars
def sort_list(nums: list):
pass
assert sort_list([3,2,1,0,5,6,4,0,1,5,3,0,4,2,8,0]) == [1,2,3,0,1,3,5,0,2,4,8,0,4,5,6,0]
assert sort_list([3,2,1,0,5,6,4,0,1,5,3,0,2,2,2,0]) == [1,2,3,0,2,2,2,0,1,3,5,0,4,5,6,0]
assert sort_list([2,2,2,0,5,6,4,0,1,5,3,0,3,2,1,0]) == [2,2,2,0,1,2,3,0,1,3,5,0,4,5,6,0]