蓝桥杯刷题第四天

1.纯暴力白嫖分

java 复制代码
import java.util.*;

public class Main {
     public static void main (String []args) {
    	 Scanner a = new Scanner(System.in);
    	 int x1,x2,x3,x4,y1,y2,y3,y4;
    	 x1 =a.nextInt(); 
    	 y1 =a.nextInt();
    	 x2 =a.nextInt();
    	 y2 =a.nextInt();
    	 x3 =a.nextInt();
    	 y3 =a.nextInt();
    	 x4 =a.nextInt();
    	 y4 =a.nextInt();
    	 int area1 = (x2-x1)*(y2-y1);
    	 int area2 = (x4-x3)*(y4-y3);
    	 System.out.println(area1+area2);
     }
}

2.穷举(我发现情况有点多穷举不完大概有个至少10种我得拿张草稿纸验算一下)

java 复制代码
import java.util.*;

public class Main {
     public static void main (String []args) {
    	 Scanner a = new Scanner(System.in);
    	 long x1,x2,x3,x4,y1,y2,y3,y4;
    	 long area1,area2,n;
    	 long area3;//重合部分
    	 x1 =a.nextLong(); 
    	 y1 =a.nextLong();
    	 x2 =a.nextLong();
    	 y2 =a.nextLong();
    	 x3 =a.nextLong();
    	 y3 =a.nextLong();
    	 x4 =a.nextLong();
    	 y4 =a.nextLong();
    	 area1 = (x2-x1)*(y2-y1);
    	 area2 = (x4-x3)*(y4-y3);
    	 long a1 = Math.max(x1, x3);
    	 long a2 = Math.min(x2, x4);
    	 long b1 = Math.max(y1, y3);
    	 long b2 = Math.min(y2, y4);
    	 long n1 = area1+area2-(a2-a1)*(b2-b1);
//    	 //两个矩形不重合且不包含
//    	 if(x3>x2&&y3>y2) {
//    		 n = area1+area2;
//    	 }
//    	 else if(x4<x1&&y4<y1){
//    		 n = area1+area2;
//    	 }
//    	 else if(x3<x2 && x3>x1 && x4>x2 && y3>y1 && y3<y2 && y4>y2) {
//    		 n = area1+area2-(x2-x3)*(y2-y3);
//    	 }
//    	 else if(x4<x2 && x4>x1 && x3<x1 && y4>y1 && y4<y2 && y3<y1) {
//    		 n = area1+area2-(x4-x1)*(y4-y1);
//    	 }
//    	 else if(x3<x2 && x3>x1 && x4>x2 && y3<y1 && y4<y2 && y4>y1) {
//    		 n = area1+area2-(x4-x1)*(y4-y1);
//    	 }
//    	 else if(x4<x2 && x4>x1 && x3<x1 && y4>y1 && y4<y2 && y3<y1) {
//    		 n = area1+area2-(x4-x1)*(y4-y1);
//    	 }
//    	 else {
//    		 if(area1>area2) {
//    			 n = area1;
//    		 }
//    		 else
//    			 n = area2;
//    	 }
    	 System.out.println(n1);
     }
}

3.巧法

java 复制代码
import java.util.*;

public class Main {
     public static void main (String []args) {
    	 Scanner a = new Scanner(System.in);
    	 long x1,x2,x3,x4,y1,y2,y3,y4;
    	 long area1,area2,n;
    	 long area3;//重合部分
    	 x1 =a.nextLong(); 
    	 y1 =a.nextLong();
    	 x2 =a.nextLong();
    	 y2 =a.nextLong();
    	 x3 =a.nextLong();
    	 y3 =a.nextLong();
    	 x4 =a.nextLong();
    	 y4 =a.nextLong();
    	 area1 = (x2-x1)*(y2-y1);
    	 area2 = (x4-x3)*(y4-y3);
    	 long a1 = Math.max(x1, x3);
    	 long a2 = Math.min(x2, x4);
    	 long b1 = Math.max(y1, y3);
    	 long b2 = Math.min(y2, y4);
    	 long n1 = area1+area2-(a2-a1)*(b2-b1);
    	 System.out.println(n1);
     }
}
相关推荐
变量未定义~2 天前
单调栈、单调队列(模板)、子矩阵(模板)
数据结构·算法·蓝桥杯
智者知已应修善业4 天前
【P12159蓝桥杯数组翻转】2025-4-24
c语言·c++·经验分享·笔记·算法·蓝桥杯
码云数智-大飞6 天前
从 OC 平滑迁移 Swift 完整方案
职场和发展·蓝桥杯
嘿黑嘿呦24 天前
chap 8排序
算法·蓝桥杯·排序算法·软件工程
林森lsjs1 个月前
【日耕一题】5. 青春常数(17届蓝桥杯C++B组第一题)
算法·蓝桥杯
Y_Bk1 个月前
第十七届蓝桥杯C/C++A组省赛
c语言·数据结构·c++·算法·蓝桥杯
2601_961845421 个月前
高考真题试卷电子版|2025高考全科试卷分类下载
考研·面试·蓝桥杯·远程工作·程序员创富·高考
2601_961194021 个月前
教资科三美术考什么|初中高中美术题型考点和模板资料
leetcode·elasticsearch·职场和发展·蓝桥杯·pat考试·lucene
h_a_o777oah1 个月前
2026 蓝桥杯软件 C++B组 国赛比赛经历及备赛建议
c++·经验分享·算法·蓝桥杯
迈巴赫车主1 个月前
蓝桥杯21241灯塔java
java·开发语言·数据结构·算法·职场和发展·蓝桥杯·动态规划