1. class Solution {
    2. public:
    3. vector<int> searchRange(vector<int>& nums, int target) {
    4. int left=0;
    5. int right=nums.size()-1;
    6. while(left<=right){
    7. int mid=left+(right-left)/2;
    8. if(nums[mid]<target){
    9. left=mid+1;
    10. }else if(nums[mid]>target){
    11. right=mid-1;
    12. }else{
    13. left=mid;
    14. right=mid;
    15. while(left>=0&&nums[left]==target){
    16. left--;
    17. }
    18. while(right<=nums.size()-1&&nums[right]==target){
    19. right++;
    20. }
    21. return vector<int>{left+1,right-1};
    22. }
    23. }
    24. return vector<int>{-1,-1};
    25. }
    26. };