```#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param target int整型 
# @param array int整型二维数组 
# @return bool布尔型
#
class Solution:
    def Find(self , target: int, array: List[List[int]]) -> bool:
        # write code here
        T=target
        rows=len(array)
        for i in range(rows):
            flag=self.erfen(T,array[i])
            if flag:
                return flag
        return flag
    def erfen(self , target: int, array: List[int]) -> bool:
        if len(array)==0:
            return False
        left=0
        right=len(array)-1
        while left<=right:
            half=(left+right)//2
            if target<array[half]:
                right=half-1
            if target>array[half]:
                left=half+1
            if target==array[half]:
                return True
        return False
##### 这个题先来理一理思路:最简单也最容易想到利用二分法来对每一小段求解,题目给出时间复杂度为O(m+n),
		我们知道二分法的时间复杂度为O(logn),如有m个小段那么时间复杂度为O(mlogn)满足要求。