we can set the right pointer firstly for instance of some corner case,
such as{0,0,1,1,1,1,1,1,1,1,1},0
here's the code
while(numbers[l+(r-l)/2]>target){
r = l + (r-l)/2;
}