https://reurl.cc/gGYKGL
1608. Special Array With X Elements Greater Than or Equal X
給你一數列 此數列只有非負整數 假設有一整數x 數列中恰巧有x個元素大於等於x
請回傳x 假設無x 則回傳-1
x不必是存在於數列的元素
Example 1:
Input: nums = [3,5]
Output: 2
Explanation: There are 2 values (3 and 5) that are greater than or equal to 2.
Example 2:
Input: nums = [0,0]
Output: -1
Explanation: No numbers fit the criteria for x.
If x = 0, there should be 0 numbers >= x, but there are 2.
If x = 1, there should be 1 number >= x, but there are 0.
If x = 2, there should be 2 numbers >= x, but there are 0.
x cannot be greater since there are only 2 numbers in nums.
Example 3:
Input: nums = [0,4,3,0,4]
Output: 3
Explanation: There are 3 values that are greater than or equal to 3.
Constraints:
1 <= nums.length <= 100
0 <= nums[i] <= 1000
思路:
排序然後比較
Python Code:
class Solution:
def specialArray(self, nums: List[int]) -> int:
nums.sort(reverse = True)
for i in range(1,len(nums)):
if nums[i-1] >= i and nums[i] < i:
return i
if nums[-1] >= len(nums):
return len(nums)
return -1