11.矩形面积交

来源:互联网 发布:品牌网络推广计划书 编辑:程序博客网 时间:2024/04/30 22:11
问题描述  平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴。对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积。输入格式  输入仅包含两行,每行描述一个矩形。  在每行中,给出矩形的一对相对顶点的坐标,每个点的坐标都用两个绝对值不超过10^7的实数表示。输出格式  输出仅包含一个实数,为交的面积,保留到小数后两位。样例输入1 1 3 32 2 4 4样例输出1.00
import java.util.Scanner; public class Main {    public static void main(String[] args) {            Scanner sc=new Scanner(System.in);                String aline[]=sc.nextLine().split("\\s");//正则表达式"\\s"表示为空格,回车,换行等空白符        String bline[]=sc.nextLine().split("\\s");                double[] a=new double[4];        double[] b=new double[4];        double[] c=new double[4];                for(int i=0;i<4;i++){            a[i]=Double.parseDouble(aline[i]);        }                for(int i=0;i<4;i++){            b[i]=Double.parseDouble(bline[i]);        }                c[0]=Math.max(a[0], b[0]);//x        c[1]=Math.max(a[1], b[1]);//y        c[2]=Math.min(a[2], b[2]);//x        c[3]=Math.min(a[3], b[3]);//y                if(c[0]<=c[2]&&c[1]<=c[3]){            System.out.println((c[2]-c[0])*(c[3]-c[1]));        }else{//没有相交,大家记得判断不相交时            System.out.println("0.00");        }    }     }
0 0
原创粉丝点击