(I2
I148
I4
(dp0
Vsquares.%l
p1
(Vsquares.cpp
p2
S'#include <cstdio>\r\n#include <algorithm>\r\n\r\n#define DIM 800\r\n#define x first\r\n#define y second\r\nusing namespace std;\r\n\r\ntemplate <typename TYPE>\r\nTYPE abs (TYPE X) {\r\n    return X > 0 ? X : -X;\r\n}\r\n\r\nint N, X1, Y1, X2, Y2, area, D[DIM][DIM];\r\npair <int, int> P[DIM][3];\r\n\r\nint main () {\r\n/*\r\n    freopen ("squares.in" ,"r", stdin );\r\n    freopen ("squares.out","w", stdout);\r\n*/    \r\n    scanf ("%d", &N); int ok = 1;\r\n    for (int i = 1; i <= N; i ++) {\r\n        scanf ("%d %d", &X1, &Y1);\r\n        scanf ("%d %d", &X2, &Y2);\r\n        \r\n        X1 += 300; X2 += 300;\r\n        Y1 += 300; Y2 += 300;\r\n        \r\n        int dX = abs (X1 - X2);\r\n        int dY = abs (Y1 - Y2);\r\n        \r\n        if (dX != dY)\r\n            ok = 0;\r\n       \r\n        P[i][1] = make_pair (X1 - dX, Y1 - dY);\r\n        P[i][2] = make_pair (X1 + dX, Y1 + dY);\r\n    }\r\n    \r\n    if (ok) {\r\n        for (int i = 1; i <= N; i ++) {\r\n            pair <int, int> P1 = P[i][1];\r\n            pair <int, int> P2 = P[i][2];\r\n            \r\n            D[P1.x][P1.y] ++;\r\n            D[P1.x][P2.y] --;\r\n            D[P2.x][P1.y] --;\r\n            D[P2.x][P2.y] ++;\r\n        }\r\n        \r\n        for (int i = 1; i < DIM; i ++)\r\n        for (int j = 1; j < DIM; j ++) {\r\n            D[i][j] = D[i][j] + D[i-1][j] + D[i][j-1] - D[i-1][j-1];\r\n            area += D[i][j] > 0 ? 1 : 0;\r\n        }\r\n        \r\n        printf ("%d\\n", area);\r\n    }\r\n\r\n    return 0;\r\n}'
p3
tp4
stp5
.