在 Python 中查找 k 的程序,其中 k 个元素的值至少为 k

假设我们有一个名为 nums 的数字列表,它只包含非负数。如果 nums 中正好有 k 个元素大于或等于 k,则求值 k。如果我们找不到这样的,则返回-1。

因此,如果输入类似于 nums = [6, 4, 0, 8, 2, 9],那么输出将是 4,因为正好有 4 个元素大于或等于 4:[6, 4, 8, 9]。

示例

让我们看下面的实现来更好地理解

def solve(nums):

   nums.sort(reverse=True)

   for i in range(1, len(nums)):

      if i >nums[i - 1]:

         break

      elif i > nums[i]:

         return i

   return -1

nums = [6, 4, 0, 8, 2, 9]

print(solve(nums))

输入

[6, 4, 0, 8, 2, 9]
输出结果
4

以上是 在 Python 中查找 k 的程序,其中 k 个元素的值至少为 k 的全部内容, 来源链接: utcz.com/z/345683.html

回到顶部