Special Array With X Elements Greater Than or Equal X
EasyArrayBinary SearchSorting
Solution
export function specialArray(nums: number[]): number {
nums.sort((a, b) => b - a);
const n = nums.length;
let [start, end] = [0, n];
while (start < end) {
const mid = start + Math.floor((end - start) / 2);
if (mid < nums[mid]) {
start = mid + 1;
} else {
end = mid;
}
}
return start !== nums[start] ? start : -1;
}