Description
一个windows桌面上的窗体可以用4个整数定义位置:左边坐标、右边坐标、上边坐标、下边坐标。我们假定左上角的位置为参照位置,那么所谓的左边坐标,就是指距离最左边的距离,其他坐标同理。现在,输入两个窗体的位置信息,请你判断它们的位置是否重叠。
Input
共两行,每行四个int范围的整数。
四个数分别表示左、右、上、下的坐标。
Output
如果窗体重叠,请输出重叠的面积;否则输出0
- Sample Input
10 100 20 60
60 160 50 200
- Sample Output
400
#include <bits/stdc++.h>
using namespace std;
struct Win{
int top, bottom, left, right;
};
int main(){
Win w[2];
cin >> w[0].left >> w[0].right >> w[0].top >> w[0].bottom;
cin >> w[1].left >> w[1].right >> w[1].top >> w[1].bottom;
int heigth = min(w[0].bottom, w[1].bottom) - max(w[0].top, w[1].top);
int width = min(w[0].right, w[1].right) - max(w[0].left, w[1].left);
if(heigth<=0 || width<=0) cout << 0;
else cout << heigth*width;
return 0;
}