没个坐标表点可能被覆盖多次,因此不可能算出重叠部分的面积;
基于坐标范围小,可用二位数组模拟,然后遍历即可
#include <iostream>
#include <math.h>#include<algorithm>
#include<iostream>
#include<cstring>
#include <cstdio>
using namespace std;
int main(){
int n,a[102][102]={0};
int x1,y1,x2,y2;
int sum=0;
cin>>n;
for(int i=0;i<n;i++){
cin>>x1>>y1>>x2>>y2;
for(int i=x1;i<x2;i++){
for(int j=y1;j<y2;j++){
a[i][j]=1;
}
}
}
for(int i=0;i<102;i++){
for(int j=0;j<102;j++){
sum+=a[i][j];
}
}
cout<<sum;
return 0;
}