Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
comprehension solution in Clear category for Rectangles Union by kurosawa4434
from typing import List, Tuple
def rectangles_union(recs: List[Tuple[int]]) -> int:
return len({(x, y) for sx, sy, ex, ey in recs for x in range(sx, ex) for y in range(sy, ey)})
if __name__ == '__main__':
print("Example:")
print(rectangles_union([
(6, 3, 8, 10),
(4, 8, 11, 10),
(16, 8, 19, 11)
]))
# These "asserts" are used for self-checking and not for an auto-testing
assert rectangles_union([
(-2, -2, 1, 1),
(0, 0, 2, 2)
]) == 12
assert rectangles_union([
(6, 3, 8, 10),
(4, 8, 11, 10),
(16, 8, 19, 11)
]) == 33
assert rectangles_union([
(16, 8, 19, 11)
]) == 9
assert rectangles_union([
(16, 8, 19, 11),
(16, 8, 19, 11)
]) == 9
assert rectangles_union([
(16, 8, 16, 8)
]) == 0
assert rectangles_union([
]) == 0
print("Coding complete? Click 'Check' to earn cool rewards!")
Oct. 18, 2018