有n
位使用者參加活動,他們的 id 從0
到n - 1
,每位使用者都 恰好 屬於某一使用者組。給你乙個長度為n
的陣列groupsizes
,其中包含每位使用者所處的使用者組的大小,請你返回使用者分組情況(存在的使用者組以及每個組中使用者的 id)。
你可以任何順序返回解決方案,id 的順序也不受限制。此外,題目給出的資料保證至少存在一種解決方案。
示例 1:
輸入:groupsizes = [3,3,3,3,3,1,3]示例 2:輸出:[[5],[0,1,2],[3,4,6]]
解釋:
其他可能的解決方案有 [[2,1,6],[5],[0,4,3]] 和 [[5],[0,6,2],[4,3,1]]。
輸入:groupsizes = [2,1,3,3,3,2]思路:輸出:[[1],[0,5],[2,3,4]]
輸入為groupsizes = [3,3,3,3,3,1,3];
二元組maps=[[3, 0], [3, 1], [3, 2], [3, 3], [3, 4], [1, 5], [3, 6]];
排序後maps=[[1, 5], [3, 0], [3, 1], [3, 2], [3, 3], [3, 4], [3, 6]];
分為三組,大小分別為1,3,3,即grp1=[[1, 5]],grp2=[[3, 0], [3, 1], [3, 2]],grp3=[[3, 3], [3, 4], [3, 6]];
可與第4步合併,給使用者分組故無需size,grp1=[5],grp2=[0,1,2],grp3=[3,4,6]。
class solution:def groupthepeople(self, groupsizes: list[int]) -> list[list[int]]:
maps=[[v,k] for k,v in enumerate(groupsizes)]
maps.sort(key=lambda x:x[0])
i=0res=
while i
Leetcode1282 使用者分組
有 n 位使用者參加活動,他們的 id 從 0 到 n 1,每位使用者都 恰好 屬於某一使用者組。給你乙個長度為 n 的陣列 groupsizes,其中包含每位使用者所處的使用者組的大小,請你返回使用者分組情況 存在的使用者組以及每個組中使用者的 id 你可以任何順序返回解決方案,id 的順序也不受...
LeetCode題目 1282 使用者分組
建立map集合,用於存放分組的list集合 迴圈開始,當分組的索引在map集合中如果沒有,就建立乙個放進去 如果在map集合有,則將當前的值放入map對應的索引的list集合中 class solution 建立list集合來存相同索引的值 list list map.get groupsizes ...
leetcode 1282 使用者分組
題目描述 有 n 位使用者參加活動,他們的 id 從 0 到 n 1,每位使用者都 恰好 屬於某一使用者組。給你乙個長度為 n 的陣列 groupsizes,其中包含每位使用者所處的使用者組的大小,請你返回使用者分組情況 存在的使用者組以及每個組中使用者的 id 可以任何順序返回解決方案,id 的順...