def overlap_with(intervals, start, end):
    """Returns whether the interval [start, end) overlaps with the intervals.
    The input intervals have been sorted in advance for binary search.

    Parameters
    ----------
    intervals : list
        Intervals.
    start : int
        Start coordinate.
    end : int
        End coordinate.

    Returns
    -------
    bool
        Overlaps or not.
    """
    if not intervals:
        return False
    left = 0
    right = len(intervals) - 1
    while left <= right:
        mid = (left + right) // 2
        start_ref = intervals[mid][0]
        end_ref = intervals[mid][1]
        if not (end <= start_ref or start >= end_ref):
            return True
        elif start >= end_ref:
            left = mid + 1
        elif end <= start_ref:
            right = mid - 1
    return False