• Home
  • About
    • JOOS photo

      JOOS

      Joos's blog

    • Learn More
    • Email
    • Github
  • Posts
    • All Posts
    • All Tags
  • Projects

[leet_code] Weekly Contest 191 in Maximum Product of Two Elements in an Array and Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts with python3

09 Jun 2020

Reading time ~1 minute

1464. Maximum Product of Two Elements in an Array

문제 : https://leetcode.com/contest/weekly-contest-191/problems/maximum-product-of-two-elements-in-an-array/

def maxProduct(nums: List[int]) -> int:
    nums.sort()
    return (nums[-1]-1) * (nums[-2]-1)

1465. Maximum Area of a Piece of Cake After Horizontal and Vertical Cuts

문제 : https://leetcode.com/contest/weekly-contest-191/problems/maximum-area-of-a-piece-of-cake-after-horizontal-and-vertical-cuts/

def maxArea(h: int, w: int, horizontal_cuts: List[int], vertical_cuts: List[int]) -> int:
    horizontal_cuts.sort()
    vertical_cuts.sort()

    prev = 0
    hor = 0
    for i in horizontal_cuts:
        hor = max(hor, i-prev)
        prev = i
    hor = max(hor, h-prev)

    prev = 0
    ver = 0
    for i in vertical_cuts:
        ver = max(ver, i-prev)
        prev = i
    ver = max(ver, w-prev)

    return (hor*ver)% 1000000007

1466. Reorder Routes to Make All Paths Lead to the City Zero

문제 : https://leetcode.com/contest/weekly-contest-191/problems/reorder-routes-to-make-all-paths-lead-to-the-city-zero/

def minReorder(n: int, connections: List[List[int]]) -> int:
    connections.sort(key=lambda i: (i[0], i[1]))

    path = {0}
    count = 0

    for start, end in connections:
        if start in path and end not in path:
            path.add(end)
            count += 1
        elif end in path and start not in path:
            path.add(start)

    return count


algorithmleet_codepython Share Tweet +1