Skip to content

Latest commit

 

History

History

1296.Divide-Array-in-Sets-of-K-Consecutive-Numbers

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

1296.Divide-Array-in-Sets-of-K-Consecutive-Numbers

假设这个数组的元素满足条件,那么对于全局最小的元素a而言,它必然也是某个连续k序列的最小元素,即 a, a+1, a+2, ... a+k-1 这k个数必须都要在数组中存在。所以我们将这k个元素拿走之后,可以重复之前的操作:即此时全局最小元素a,必然也是某个连续k序列的最小元素,我们再将它们拿走...直至全部元素都归类完毕。如果某次删除k序列的操作不能恰好完成,那么就返回false。

为了方便“删除”操作,C++我们选择multiset这个数据结构,它可以盛装重复的元素,同时是自动保持有序的。每次的全局最小元素可以直接从Set.begin()里面读就行。