题目
给你一个非负整数数组 nums
。如果存在一个数 x
,使得 nums
中恰好有 x
个元素 大于或者等于 x
,那么就称 nums
是一个 特殊数组 ,而 x
是该数组的 特征值 。
注意: x
不必 是 nums
的中的元素。
如果数组 nums
是一个 特殊数组 ,请返回它的特征值 x
。否则,返回 -1
。可以证明的是,如果 nums
是特殊数组,那么其特征值 x
是 唯一的 。
示例1:
1 | 输入:nums = [3,5] |
示例2:
1 | 输入:nums = [0,0] |
示例3:
1 | 输入:nums = [0,4,3,0,4] |
示例4:
1 | 输入:nums = [3,6,7,7,0] |
提示:
1 <= nums.length <= 100
0 <= nums[i] <= 1000
解法一:
Java
1 | public int specialArray(int[] nums) { |