8 矩形面积交
作者: Turbo时间限制: 1S章节: 基本练习
问题描述 :
平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴。对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积。
输入说明 :
输入仅包含两行,每行描述一个矩形。
在每行中,给出矩形的一对相对顶点的坐标,每个点的坐标都用两个绝对值不超过10^7的实数表示。
输出说明 :
输出仅包含一个实数,为交的面积,保留到小数后两位。
输入范例 :
1 1 3 3
2 2 4 4
输出范例 :
扫描二维码关注公众号,回复:
10690657 查看本文章
1.00
#include<stdio.h>
#define max(x,y) (x>y?x:y)
#define min(x,y) (x<y?x:y)
int main(){
double a,b,c,d,A,B,C,D,m,M,n,N;
while(~scanf("%lf %lf %lf %lf",&a,&b,&c,&d)){
scanf("%lf %lf %lf %lf",&A,&B,&C,&D);
m=max(min(a,c),min(A,C));
n=max(min(b,d),min(B,D));
M=min(max(a,c),max(A,C));
N=min(max(b,d),max(B,D));
if(M>m && N>n){
printf("%.2f\n",(M-m)*(N-n));
}else{
printf("0.00\n");
}
}
return 0;
}
参考
https://blog.csdn.net/weixin_43790703/article/details/104330648