您的位置:首页 > 编程语言 > Java开发

蓝桥杯 基础练习VIP 矩形面积交(java)

2018-03-25 16:04 288 查看
矩形面积交

题目描述平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴。对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积。
输入输入仅包含两行,每行描述一个矩形。 

在每行中,给出矩形的一对相对顶点的坐标,每个点的坐标都用两个绝对值不超过10^7的实数表示。输出输出仅包含一个实数,为交的面积,保留到小数后两位。 样例输入
1  1  3  3

2  2  4  4
样例输出
1.00


思路:
    先用二维数组  标记  第一个矩形的区域,然后  在第二个矩形的区域内  寻找  刚才第一个矩形标记的。。

自己写的代码如下:
import java.util.Scanner;

public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int[][] a = new int[10000][10000];
int x1 = scanner.nextInt();
int y1 = scanner.nextInt();
int x2 = scanner.nextInt();
int y2 = scanner.nextInt();
int x3 = scanner.nextInt();
int y3 = scanner.nextInt();
int x4 = scanner.nextInt();
int y4 = scanner.nextInt();

for(int i=x1;i<x2;i++){    //先标记第一个矩形
for(int j=y1;j<y2;j++){
a[i][j]=1;
}
}

int cnt = 0;
for(int i=x3;i<x4;i++){    //在第二个矩形的区域内找刚标记的
for(int j=y3;j<y4;j++){
if(a[i][j]==1)
cnt++;
}
}
System.out.println(cnt);

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: