差分
#include<bits/stdc++.h>
using namespace std;
const int N=105;
int g[N][N];
void insert(int x1,int y1,int x2,int y2){
g[x1][y1] +=1;
g[x1][y2+1] -=1;
g[x2+1][y1] -=1;
g[x2+1][y2+1] +=1;
}
int main()
{
int n;
cin>>n;
while(n--)
{
int x1,x2,y1,y2;
cin>>x1>>y1>>x2>>y2;
insert(x1+1,y1+1,x2,y2);//还真是得读题他这里(1,1)到(4,4)是3*3矩阵所以我们令x1,y1+1这样刚好避免了0又数目相等
}
int cnt=0;
for(int i=1;i<N;++i)
for(int j=1;j<N;++j){
g[i][j]=g[i][j]+g[i-1][j]+g[i][j-1]-g[i-1][j-1];
if(g[i][j]>0)cnt++;
}
cout<<cnt;
}