• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Uriel's Corner

            Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
            posts - 0, comments - 50, trackbacks - 0, articles - 594
            給出一堆樹的坐標(biāo),用最小的多邊形圍住這些樹,求問最后哪些樹在多邊形的頂點(diǎn)上,凸包模板題
            借鑒了https://leetcode.com/problems/erect-the-fence/discuss/1442266/A-Detailed-Explanation-with-Diagrams-(Graham-Scan) 的做法,先對樹坐標(biāo)先x后y排序,在分上下半塊凸包分別構(gòu)建

             1 #587
             2 #Runtime: 562 ms
             3 #Memory Usage: 14.2 MB
             4 
             5 class Solution(object):
             6     def corssProduct(self, p1, p2, p3):
             7         return (p3[1]-p2[1]) * (p2[0]-p1[0]) - (p2[1]-p1[1]) * (p3[0]-p2[0])
             8     
             9     def buildConvexHull(self, points):
            10         lower = []
            11         upper = []
            12         for pt in points:
            13             while len(lower) >= 2 and self.corssProduct(lower[-2], lower[-1], pt) < 0:
            14                 lower.pop()
            15             while len(upper) >= 2 and self.corssProduct(upper[-2], upper[-1], pt) > 0:
            16                 upper.pop()
            17             upper.append(pt)
            18             lower.append(pt)
            19         return upper, lower
            20         
            21     def outerTrees(self, trees):
            22         
            23         """
            24         :type trees: List[List[int]]
            25         :rtype: List[List[int]]
            26         """
            27         points = sorted(trees)
            28         upper, lower = self.buildConvexHull(points)
            29         return set(tuple(T) for T in (upper + lower))
            久久99国产综合精品| 亚洲色大成网站WWW久久九九| 青青热久久国产久精品 | 久久人人爽人人爽人人av东京热| 99久久婷婷国产一区二区| 亚洲国产精品久久久久| 国产精品9999久久久久| 99久久久精品免费观看国产| 国产产无码乱码精品久久鸭| 久久精品无码午夜福利理论片| 久久青草国产手机看片福利盒子| 久久精品中文字幕有码| 一本久道久久综合狠狠躁AV| 亚洲狠狠婷婷综合久久久久| 99久久精品免费观看国产| 91精品日韩人妻无码久久不卡| 久久99久久成人免费播放| 欧美精品久久久久久久自慰| 久久99精品国产麻豆不卡| 久久亚洲天堂| 久久996热精品xxxx| 亚洲精品tv久久久久| 天堂久久天堂AV色综合| 狠狠狠色丁香婷婷综合久久俺| 久久久久亚洲AV片无码下载蜜桃| 伊人久久精品无码二区麻豆| 91久久精品91久久性色| 亚洲av伊人久久综合密臀性色| 国产精品对白刺激久久久| 久久天天躁狠狠躁夜夜不卡| 亚洲va久久久噜噜噜久久| 久久精品国产91久久综合麻豆自制| 欧美日韩精品久久久免费观看| 日韩AV无码久久一区二区 | 精品久久久久中文字| 伊人伊成久久人综合网777| 麻豆成人久久精品二区三区免费| 91久久精品视频| 色综合久久无码五十路人妻| 久久久久这里只有精品 | 99久久国产精品免费一区二区|