최대 3000개의 축에 평행한 직사각형이 주어질 때, 겹치는 부분을 한 번만 세어 합집합의 넓이를 구한다.
상현이는 국방부 퀘스트를 수행하기 전에 이별 파티를 열려고 한다. 파티를 치를 행사장을 빌리는 것이 첫 단계다.
대여 업체 직원이 모두 전직 프로그래머라 대여 방식이 독특하다. 상현이가 빌릴 장소를 정하면 업체는 그 장소를 빈틈없이 덮는 직사각형 NNN개를 만든다. 그다음 직사각형의 개수 NNN과 각 직사각형의 좌측 하단 좌표, 우측 상단 좌표를 알려 준다. NNN개의 직사각형은 일부가 겹치거나 전체가 겹칠 수도 있다. 모든 직사각형의 변은 좌표축과 평행하다.
상현이가 빌린 행사장의 넓이, 즉 직사각형 NNN개가 덮는 영역의 넓이를 구하는 프로그램을 작성하라.
첫째 줄에 직사각형의 개수 NNN이 주어진다. (2≤N≤30002 \le N \le 30002≤N≤3000)
이어지는 NNN개의 줄에 네 정수 x1x_1x1, y1y_1y1, x2x_2x2, y2y_2y2가 순서대로 주어진다. (−50000≤x1<x2≤50000-50000 \le x_1 < x_2 \le 50000−50000≤x1<x2≤50000, −50000≤y1<y2≤50000-50000 \le y_1 < y_2 \le 50000−50000≤y1<y2≤50000) 이는 직사각형의 좌측 하단 좌표가 (x1,y1)(x_1, y_1)(x1,y1), 우측 상단 좌표가 (x2,y2)(x_2, y_2)(x2,y2)라는 뜻이다.
첫째 줄에 상현이가 빌린 행사장의 넓이를 출력한다. 겹치는 부분은 한 번만 센다. 넓이는 최대 101010^{10}1010이라 32비트 정수 범위를 넘는다.