while left <= right: mid = left + (right - left) // 2 if nums[mid] < target: left = mid + 1 elif nums[mid] > target: right = mid - 1 elif nums[mid] == target: right = mid - 1 if left < 0or left > len(nums) - 1: return -1 if nums[left] == target: return left else: return -1 defright_(nums,target): left = 0 right = len(nums) - 1
while left <= right: mid = left + (right - left) // 2 if nums[mid] < target: left = mid + 1 elif nums[mid] > target: right = mid - 1 elif nums[mid] == target: left = mid + 1 if right < 0or right > len(nums) - 1: return -1 if nums[right] == target: return right else: return -1
while left <= right: mid = left + (right - left) // 2 if nums[mid] < target: left = mid + 1 elif nums[mid] > target: right = mid - 1 elif nums[mid] == target: right = mid - 1 if left < 0or left > len(nums) - 1: return -1 if nums[left] == target: return left else: return -1
defright_(nums,target): left = 0 right = len(nums) - 1
while left <= right: mid = left + (right - left) // 2 if nums[mid] < target: left = mid + 1 elif nums[mid] > target: right = mid - 1 elif nums[mid] == target: left = mid + 1 if right < 0or right > len(nums) - 1: return -1 if nums[right] == target: return right else: return -1