Python solution with brute force
Approach\n Describe your approach to solving the problem. \nsort rectangles in bottomLeftX coords\ninterate through rectangles check if 2 rects interseted, if n
# Approach\n<!-- Describe your approach to solving the problem. -->\nsort rectangles in bottomLeftX coords\ninterate through rectangles check if 2 rects interseted, if not break loop and check new one, otherwises:\ncompute intersection coords, compute max square can get from this area,which means:min(ex,ey), ex:horizontal edge length, ey:vertical edge length\n\n# Complexity\n- Time complexity:\n<!-- Add your time complexity here, e.g. $$O(n)$$ -->\nO(n*n)\n\n\n\n# Code\n```\nclass Solution(object):\n    def largestSquareArea(self, bottomLeft, topRight):\n        """\n        :type bottomLeft: List[List[int]]\n        :type topRight: List[List[int]]\n        :rtype: int\n        """\n        def _intsq(r1,r2):\n            if r2[1]>r1[3] or r2[3]<r1[1] or r2[0]>r1[2]:return 0\n            i1x,i1y=max(r1[0],r2[0]),max(r1[1],r2[1])\n            i2x,i2y=min(r1[2],r2[2]),min(r1[3],r2[3])\n            e1,e2=(i2x-i1x),(i2y-i1y)\n            return min(e1,e2)**2\n\n        rectangles,ans=sorted([(b[0],b[1],t[0],t[1]) for b,t in zip(bottomLeft,topRight)],key=lambda x:x[0]),0\n        for i in range(len(rectangles)):\n            r1=rectangles[i]\n            for j in range(i+1,len(rectangles)):\n                r2=rectangles[j]\n                if r2[0]>r1[2]:break\n                ans=max(ans,_intsq(r1,r2))\n        return ans\n```
['Sorting', 'Python']