假设我们有一个名为 nums 的数组,其中所有元素都是 0 或正数。如果存在一个数字 x 使得 nums 中正好有 x 个数字大于或等于 x,则 nums 被认为是特殊数组。x 不必是 nums 中的元素。这里我们必须找到 x 如果数组是特殊的,否则返回 -1。
因此,如果输入类似于 nums = [4,6,7,7,1,0],那么输出将为 4,因为有 4 个数字大于或等于 4。
让我们看看以下实现以获得更好的理解 -
def solve(nums): for i in range(max(nums)+1): count=0 for j in nums: if j >= i: count+=1 if count == i: return i return -1 nums = [4,6,7,7,1,0] print(solve(nums))
[4,6,7,7,1,0]输出结果
-1