用Python查找在特殊列表中元素大于或等于元素数量的X的程序

用Python查找在特殊列表中元素大于或等于元素数量的X的程序

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

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

为了解决这个问题,我们将遵循以下步骤:

  • for i in range(0,nums的最大值),做如下操作:
    • count:= 0

    • 对于nums中的每个j,执行以下操作:

      • 如果j >= i,则

  • count := count + 1

    • 如果计数与i相同,则
  • 返回i

  • 返回-1

更多Python相关文章,请阅读:Python 教程

示例(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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程