//Time:(O(log(n))),Space:O(1)
//此题为二分查找的变形题目,需要先学会二分查找法
class Solution
{
public:
int binarySearchLast(vector<int>& nums,int target)
{
int begin=0;
int end=nums.size()-1;
while(begin<=end)
{
int mid=begin+(end-begin)/2;
if(nums[mid]>target)
{
end=mid-1;
}
else
{
begin=mid+1;
}
}
return end;
}
vector<int> searchRange(vector<int>& nums, int target)
{
vector<int> v(2);
v[0]=-1;
v[1]=-1;
if(nums.size()>0)
{
int end=binarySearchLast(nums,target);
int start=binarySearchLast(nums,target-1)+1;
if(start>=0&&start<=end&&end<nums.size())
{
v[0]=start;
v[1]=end;
}
}
return v;
}
};