classSolution{publicint[]searchRange(int[]nums,inttarget){finalintl=firstGreaterEqual(nums,target);if(l==nums.length||nums[l]!=target)returnnewint[]{-1,-1};finalintr=firstGreaterEqual(nums,target+1)-1;returnnewint[]{l,r};}// Finds the first index l s.t A[l] >= target// Returns A.length if can't findprivateintfirstGreaterEqual(int[]A,inttarget){intl=0;intr=A.length;while(l<r){finalintm=(l+r)/2;if(A[m]>=target)r=m;elsel=m+1;}returnl;}}