我们可以手推一下样例,我们会发现,如果当前第 \(j\) 个数不满足 \(sum_{j - 1} + 1 >= a_j\)那么这个数就不可以从 \(0\) 表示到 \(a_j\) 中的所有数字(假设排序过了),那么我们每次可以加入的数就是一个区间,那么我们能选的数就是一个区间,我们会发现这种每次加入数的过程最多 \(2 * \log n\) 次,要查询一个区间中的数我们可以使用权值线段树