public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int x1 = in.nextInt(); int y1 = in.nextInt(); int w1 = in.nextInt(); int h1 = in.nextInt(); int x2 = in.nextInt(); int y2 = in.nextInt(); int w2 = in.nextInt(); int h2 = in.nextInt(); int x3 = in.nextInt(); int y3 = in.nextInt(); int w3 = in.nextInt(); int h3 = in.nextInt(); int width = Math.min(Math.min(x1+w1,x2+w2),x3+w3)-Math.max(Math.max(x1,x2),x3); int height = Math.min(Math.min(y1,y2),y3)-Math.max(Math.max(y1-h1,y2-h2),y3-h3); if (width > 0 && height > 0){ System.out.println(width * height); }else { System.out.println(0); } } } 找到最小的y减去最大的y-h,并保证这个值大于零的(这个值是相交矩形的高),找到最小的x+w减去最大的x,并保证这个值是大于零的(这个值是相交矩形的宽),最后相乘即是答案。
点赞

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务