A41767. 面积
填空题
困难
知识点
题目描述
面积
题目描述
小蓝要给墙面上的N个矩形区域粉刷涂料,给出每个矩形左下角和右上角的两个坐标(x1,y1,x2,y2)。请帮助小蓝计算下粉刷涂料的面积是多少,如果矩形之间有重叠部分只计算一次。
例如:有2个矩形,2个矩形左下角和右上角的两个坐标分别为:(2,2,9,5)、(6,1,12,9),其粉刷涂料的面积是60。
输入描述
第一行输入一个整数N(2<=N<=20),表示有N个矩形
接下来的N行每行包括四个正整数x1,y1,×2,y2(0<=x1,y1,x2,y2<=100,且x1!=x2,y1!=y2),x1和y1表示矩形左下角的坐标,x2和y2表示矩形右上角的坐标,四个正整数之间一个空格隔开
输出描述
输出一个整数,表示N个矩形需要粉刷的面积,重叠部分只计算一次!
样例输入
2
2 2 9 5
6 1 12 9
样例输出
60
参考答案
#include <iostream>
#include <cstdio>
using namespace std;
int a[105][105],n,ans;
int main()
{
cin>>n;
int x1,y1,x2,y2;
while(n--){
cin>>x1>>y1>>x2>>y2;
for(int i=x1;i<x2;i++)
for(int j=y1;j<y2;j++)
if(a[i][j]==0){
a[i][j]=1;
ans++;
}
}
cout<<ans<<endl;
return 0;
}
上一题
下一题