在Python中为X元素大于或等于X的特殊数组查找X的程序

假设我们有一个名为 nums 的数组,其中所有元素都是 0 或正数。如果存在一个数字 x 使得 nums 中正好有 x 个数字大于或等于 x,则 nums 被认为是特殊数组。x 不必是 nums 中的元素。这里我们必须找到 x 如果数组是特殊的,否则返回 -1。

因此,如果输入类似于 nums = [4,6,7,7,1,0],那么输出将为 4,因为有 4 个数字大于或等于 4。

示例(Python)

让我们看看以下实现以获得更好的理解 -

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

猜你喜欢