29次-CCF-第一题-田地丈量

news2024/9/21 12:36:22

1 题目链接

进去后点,模拟考试就可以看到题目了
AC证明:
在这里插入图片描述

2 分析

前言:
离谱,这个题考试的时候做了30+min才写出来,但是代码还贼简单。
你说它难吧,代码这么简单,你说不难吧,我在这个题还卡了那么久。(菜鸡痛哭)

正话:
题目的意思就是 计算两个给了坐标的矩形的重合面积,怎么计算呢?
——计算重合矩形的坐标。

先考虑可以重合的情况,就会发现重合矩形的坐标是他们各个坐标往聚合中心方向的坐标值
也就是说重合矩形的左下角的坐标(l,down)和右上角的坐标(r,up)是(x1,y1)(x2,y2)(0,0)(a,b)这四个坐标点往他们中心收的值。

上面表达得有点概念化,具体说就是,
重合面积的左边界限一定是0和x1的更大的一个,对吧
重合面积的右边界限一定是b和x2的更小的一个,对吧
重合面积的上边界限一定是0和y2的更小的一个,对吧
重合面积的下边界限一定是0和y1的更大的一个,对吧

最后判断下是否重合(不重合的话,计算出来的矩形坐标肯定是不成形的)

  1. 没重合就不管。
  2. 重合就可以通过重合矩形的坐标计算重合面积。

3 AC代码

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
int n,a,b;
int sum=0;

int main() {
	int l,r,up,down,x1,y1,x2,y2;
	cin>>n>>a>>b;
	for(int i=0; i<n; i++) {//计算重合矩形的坐标
		cin>>x1>>y1>>x2>>y2;
		l=max(0,x1);
		r=min(a,x2);
		up=min(b,y2);
		down=max(0,y1);
		if(r>l &&up>down)//如果有重合
			sum+=(r-l)*(up-down);
	}
	cout<<sum<<endl;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/465812.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CSS布局之圣杯布局/双飞翼布局

&#x1f4dd;个人主页&#xff1a;爱吃炫迈 &#x1f48c;系列专栏&#xff1a;HTMLCSS &#x1f9d1;‍&#x1f4bb;座右铭&#xff1a;道阻且长&#xff0c;行则将至&#x1f497; 文章目录 圣杯布局HTML代码步骤CSS代码 双飞翼布局HTML代码步骤CSS代码 小结 圣杯布局 HTM…

延长无线传感器网络网络寿命的异构节点智能部署策略(Matlab代码实现)

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f468;‍&#x1f4bb;4 Matlab代码 &#x1f4a5;1 概述 无线传感器网络是通过大量分布的传感器节点作为终端来协同感知和自主地监测外部世界,以多跳、自组织或协作的方式进行通信和信息…

Android系统架构

Application层&#xff0c;也就是应用层&#xff0c;不仅包括通话短信联系人这种系统级的应用&#xff0c;还包括用户自己安装的一些第三方应用Framework层&#xff0c;这一层大部分用Java写的&#xff0c;包括系统服务和四大组件Library层&#xff0c;这一层大部分都是C/C写的…

C++调用matlab编译动态库方法及相关问题解决

目录 参考链接&#xff1a;1、C调用matlab代码的方法1.1、Library Compiler 方法1.1.1、功能1.1.2、参考链接 1.2、mex -setup方法1.2.1、功能参考链接&#xff1a; 1.3、coder 方法功能 1.4、Matlab engine 2、C 使用matlab编译动态库的传参方法3、matlab运行时 参考链接&…

《AI嵌入式系统技术与实践-基于树莓派RP2040和MicroPython》书籍介绍

图书封面及出版信息 该书由本博主编著&#xff0c;全书总字数约50万字&#xff0c;本书于2023年4月出版。 内容简介 本书基于以RP2040 MCU芯片为核心的树莓派Pico开发板硬件扩展接口&#xff0c;利用Pico硬件扩展接口和面包板设计典型硬件电路&#xff0c;并结合当今流行的微…

网络编程(TCP与UDP协议)

文章目录 1. 网络编程1.1 软件架构1.2 网络基础 2. 网络通信要素2.1 如何实现网络中的主机互相通信2.2 通信要素一&#xff1a;IP地址和域名2.2.1 IP地址2.2.2 域名 2.3 通信要素二&#xff1a;端口号2.4 通信要素三&#xff1a;网络通信协议 3. 传输层协议&#xff1a;TCP与UD…

如何快速查询Git的config配置文件的本地路径

如何快速查询Git的config配置文件的本地路径 命令作用git config --local --list --show-origin查看仓库级别 git 配置信息&#xff0c;并打印配置文件本地路径最高优先级&#xff08;仓库下&#xff09;git config --global --list --show-origin查看全局级别 git 配置信息&a…

2022年全国职业院校技能大赛网络系统管理赛项模块B:Windows部署(样题1)

2022年全国职业院校技能大赛 网络系统管理赛项 模块B&#xff1a;Windows部署 &#xff08;样题1&#xff09; 目录 一、 初始化环境 &#xff08;一&#xff09;默认账号及默认密码 二、项目任务描述 &#xff08;一&#xff09;基本配置 &#xff08;二&#xff09;拓…

C语言控制语句

文章目录 前言一、分支语句1.if语句2.if else else if3.switch语句 二、循环语句1.for循环2.while循环3.do-while循环 三、跳转语句1.break语句2.continue语句3.goto语句 四、嵌套语句1.if语句嵌套2.for语句嵌套3.while语句嵌套 总结 前言 C语言中的控制语句是非常重要的一个知…

JVM入门必备

1、JVM 的位置 2、JVM 的体系结构 JVM&#xff08;Java虚拟机&#xff09;是Java程序的运行环境&#xff0c;它对于Java平台的运行和跨平台特性的实现有着重要的作用。JVM的体系结构有以下几个部分&#xff1a; 类加载器&#xff08;ClassLoader&#xff09;&#xff1a;负责将…

day4 IP地址与端口号

IP地址及其表示方式 IP地址表示方法&#xff1a; 分类的IP地址&#xff1a; 多归属主机&#xff1a; 当一个主机通过两个网卡同时连接到两网络时&#xff0c;也就是该主机同时拥有两个IP地址&#xff0c;该主机被称为多归属主机&#xff1b; 一个路由器至少连接到两个不同的网…

C++语法(21)---- 模拟map和set

(1条消息) C语法&#xff08;20&#xff09;---- 模拟红黑树_哈里沃克的博客-CSDN博客https://blog.csdn.net/m0_63488627/article/details/130296772?spm1001.2014.3001.5501 目录 1.stl中的设计思想 2.模拟set和map 1.set和map的类 2.BRTree的仿函数实现 3.红黑树的迭…

C语言力扣简单题-两数之和

(创作不易&#xff0c;感谢有你&#xff0c;你的支持&#xff0c;就是我前行的最大动力&#xff0c;如果看完对你有帮助&#xff0c;请留下您的足迹&#xff09; 两数之和 题目&#xff1a; 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和…

从数据处理到人工智能(常用库的介绍)

Python库之数据分析 ​​​​​​​​​​​​ 可以这么理解pandas通过扩展了对一维数据和二维数据的一种表示&#xff0c;因而能够形成更高层对数据的操作&#xff0c;简化数据分析的运行 Python库之数据可视化 Matplotlib — Visualization with Python seaborn: statistic…

DNS基础:通过dig命令理解DNS域名解析中的A记录,AAAA记录,CNAME记录,MX记录,NS记录

参考博文&#xff1a;https://blog.csdn.net/zxl1990_ok/article/details/125432123 目录 参考资料DNS简介查询过程直接显示DNS寻址结果向特定DNS服务器寻址查询A记录查询AAAA记录CNAME记录MX记录NS记录PTR记录SOA记录查看DNS服务器的主从关系 参考资料 http://ruanyifeng.com…

C++ Primer阅读笔记--异常处理机制

目录 1--异常处理机制 2--throw表达式 3--try语句块 4--标准异常类 5--代码实例 1--异常处理机制 异常处理机制为程序中的异常检测和异常处理这两部分的协作提供支持&#xff1b;在 C 语言中&#xff0c;异常处理包括&#xff1a;throw表达式、try语句块和异常类&#xff…

线程池【Linux】

文章目录 1. 引入2. 应用3. 实现封装线程封装线程池线程函数生产消费逻辑互斥锁条件变量线程函数主线程测试1 4. 优化5. 日志日志的重要性实现日志级别提取参数stdarg.h 头文件日志文件 懒汉实现单例模式什么是懒汉模式什么是单例模式实现 1. 引入 线程池是一种池化技术&#…

Vue后台管理系统-前端登录设计

在做后台管理系统时&#xff0c;登录模块是必不可少的&#xff0c;访模块看似简单&#xff0c;在开发涉及到许多细节&#xff0c;一般来说主要有以下这些&#xff1a; 1. 登录输入的信息要进行正则校验&#xff1b; 2. 密码输入要可以查看明文&#xff1b; 3. 密码输入时要对…

JavaWeb——IP协议的相关特性

目录 一、IP协议 1、地址管理 &#xff08;1&#xff09;、动态分配IP地址 &#xff08;2&#xff09;、NAT机制 &#xff08;3&#xff09;、IPv6协议 2、路由选择 &#xff08;1&#xff09;、定义 &#xff08;2&#xff09;、原理 二、路由器 三、IP地址的组成 1…

Postman登录注册指导

在做后端开发的小伙伴经常需要测试自己写的接口是否可以用 这时Postman就是一个很好的选择 如果您还没有下载 可以参考我的文章 API接口调试工具Postman下载安装步骤 安装好之后 我们就需要处理 它的一个注册和登录 我们点击右上角 这里就有一个创建一个账户 我们点击一下 …