圆和矩形是否有重叠

【算法积累】圆和矩形是否有重叠 LeetCode 1401. 圆和矩形是否有重叠 难度 中等 给你一个以 (radius, x_center, y_center) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2),其中 (x1, y1) 是矩形左下角的坐标,(x2, y2) 是右上角的坐标。 如果圆和矩形有重叠的部分,请你返回True,否则返回False。 换句话说,请你检测是否存在点 (xi, yi) ,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。 示例1 输入:radius = 1, x_center = 阅读详情

引言:

写这篇博客主要是把它当做一个云笔记,顺便帮助一下做这道题没有思路的人。
因为之前想的比较复杂,现在看这道题感觉是如此简单…

题目描述:

给你一个以 (radius, x_center, y_center) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2),其中 (x1, y1) 是矩形左下角的坐标,(x2, y2) 是右上角的坐标。
如果圆和矩形有重叠的部分,请你返回 True ,否则返回 False 。
换句话说,请你检测是否 存在 点 (xi, yi) ,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。

输入输出:

在这里插入图片描述

题解:

首先判断圆心坐标是否矩形范围内。
如果圆心横坐标在矩形范围内,那么只要比较圆心到矩形的两个宽所在的两条直线的距离,选择最小的距离和半径比较,如果距离大于半径,那么没有重叠,反之则有重叠。圆心纵坐标也同理。
如果圆心横纵坐标都不在矩形范围内,那么就和矩形的四个顶点的距离比较。如果圆心到顶点的最小距离大于半径,那么没有重叠,反之则有重叠。

总结:
如果圆心横纵坐标都不在矩形范围内,那么就把圆心到顶点最短距离和半径作比较。
如果圆心横纵坐标不是都不在矩形范围内,那么就把圆心到四个边最短距离和半径作比较。

代码:

class Solution {
public:
    bool checkOverlap(int radius, int x, int y, int x1, int y1, int x2, int y2) {
        int xx=(x>=x1&&x<=x2)?0:min(abs(x-x1),abs(x-x2));
        int yy=(y>=y1&&y<=y2)?0:min(abs(y-y1),abs(y-y2));
        return xx*xx+yy*yy<=radius*radius;
    }
};
Leetcode 1401:圆和矩形是否有重叠(超详细的解法!!!) 给你一个以 (radius, x_center, y_center) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2),其中 (x1, y1) 是矩形左下角的坐标,(x2, y2) 是右上角的坐标。 如果圆和矩形有重叠的部分,请你返回True,否则返回False。 换句话说,请你检测是否 存在 点 (xi, yi) ,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。 示例 ... 阅读详情

相关推荐

圆和矩形是否重叠leetcode-leetcode_solutions:leetcode_solutions

圆和椭圆重叠leetcode ——#158 尖端 关心特殊情况 从不同的方向思考 简单的 大批 1.Two Sum -> 使用哈希表避免遍历列表448.查找数组中消失的所有数字-> 1.建立缓冲区来计算数字| 2.使用数组作为带符号的缓冲区118.Pascal's Triangle -> 理解结构并做167 Two Sum II - 输入数组已排序:使用排序数组的条件,使用前后两个指针35.Search Insert Position -> 线性搜索/二分搜索(左右各有1个间隙) 66.Plus One -> 了解加法过程122.Best Time to Buy and Sell Stock II -> 动态规划 -> 27.Remove Element -> 两个指针,前后,交换268.Missing Number -> 数字之和 [0,1,2,...,n] 是一个常数,所以可以计算出缺失的那个169.Majority Element -> Hashtable | Boyer-Moore 多数投票算法283. 移零 -> 27. 移除元素243.Shortest Word Dista

算法——判断圆和矩形是否有重叠

圆和矩形的重叠问题一.问题描述二.分析思路三.代码示例(JQuery) 一.问题描述 给你一个以 (radius, x_center, y_center) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2),其中 (x1, y1) 是矩形左下角的坐标,(x2, y2) 是右上角的坐标。 如果圆和矩形有重叠的部分,请你返回 True ,否则返回 False 。 换句话说,请你检测是否 存在 点 (xi, yi) ,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。 二.分析思路 1、计算出

weixin_45683908的博客 2247

Shapes:用Java实现的坐标系统支持多种形状和碰撞检测

形状 坐标系统支持多种形状和碰撞检测,以Java实现。 当前支持以下形状: 圆圈 长方形 正方形 JUnit测试包含在ShapeTests.java文件中,将需要JUnit jar。

计算圆形是否和正方形相交 【微软面试100题 第二十三题】

题目要求:   用最简单、最快捷的方法计算出下面这个圆形是否和正方形相交。   3D坐标系原点(0.0,0.0,0.0);圆形:半径 r = 3.0,圆心 o = (*.*,0.0,*.*);正方形:4个角坐标 1:(*.*,0.0,*.*) 2:(*.*,0.0,*.*) 3:(*.*,0.0,*.*) 4:(*.*,0.0,*.*) 题目分析:   用圆心到四条边的距离来判断:如果圆心...

weixin_33778544的博客 242

国腾|GM8775C替换TC358775/MIPI转双通道LVDS

1 产品概述 GM8775C 型DSI 转双通道 LVDS 发送器产品主要实现将MIPI DSI 转单/双通道 LVDS 功能,MIPI 支持 1/2/3/4 通道可选,最大支持 4Gbps 速率。LVDS时钟频率最高154MHz,最大支持视频格式为 FULL HD(1920 x 1200)。 该芯片主要应用于手持设备、双屏显示,大屏幕显示等应用需求。 2 产品特征 a) I/0电源电压:1.8V /3.3V; b) core 电源电压...

Vasse的博客 1073

【信息学奥赛一本通】1215:迷宫(bfs版)

同时当Extense处在某个格点时,他只能移动到东南西北(或者说上下左右)四个方向之一的相邻格点上,Extense想要从点A走到点B,问在不走出迷宫的情况下能不能办到。每组测试数据的第1行是一个正整数n(1≤n≤100),表示迷宫的规模是n×n的。接下来是一个n×n的矩阵,矩阵中的元素为‘再接下来一行是4个整数ha,la,hb,lb,描述A处在第ha行, 第la列,B处在第hb行, 第lb列。一天Extense在森林里探险的时候不小心走入了一个迷宫,迷宫可以看成是由n×n的格点组成,每个格点只有2种状态,.

chu_xiaojie的博客 946

python判断圆和矩形是否有重叠,判断两个矩形是否接触重叠(附js代码)

以下有两个方法判断第一个。。。暂时没理解第二个 就是比如以obj1矩形 为固定,obj2矩形为位置不定,同时满足以下四个条件,就是判断obj2四个边是同时都在obj1边的边界范围内这个坐标值是以页面中元素相对于屏幕边的距离 也就是 left top bottom right判断obj2的顶边x坐标值是否大于obj1的底边判断obj2的底边x坐标值是否小于obj1的定边判断obj2的左边y坐标值是否...

weixin_39631094的博客 876

解决ArcGIS-OpenStreetMap Toolbox-Load OSM File错误

在安装成功OpenStreetMap Toolbox后,首次运行Load OSM File工具,出现以下错误

Zjf的博客 8820

python判断圆和矩形是否有重叠_T1401、圆和矩形是否有重叠

给你一个以 (radius, x_center, y_center) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2),其中 (x1, y1) 是矩形左下角的坐标,(x2, y2) 是右上角的坐标。如果圆和矩形有重叠的部分,请你返回 True ,否则返回 False 。换句话说,请你检测是否 存在 点 (xi, yi) ,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。示例...

weixin_39952031的博客 573

基于STM32和K210的自动驾驶小车设计

自动驾驶技术正在迅速发展,成为了汽车行业和智能交通领域的热点之一。随着科技的发展,STM32和K210这两款芯片为自动驾驶小车提供了优秀的硬件支持。本文我们将学习如何使用STM32和K210打造一个简单的自动驾驶小车。提示:以下是本篇文章正文内容,下面案例可供参考通过这篇文章,掌握了如何使用STM32和K210构建一个简单的自动驾驶小车。通过了解基本的电路设计,并编写了STM32和K210的代码。通过这个例子,可以更好地理解如何在嵌入式系统中使用STM32和K210,以及如何实现自动驾驶小车的简单功能。

Kyle_Chan_zMH的博客 2222

【技术分享】语音多模态LLM越狱

语音多模态LLM越狱攻击作为一种新兴安全威胁,揭示了多模态模型在语音输入场景下的脆弱性。尽管已有多种攻击方法被提出,但其具体实现步骤、防御措施的有效性及行业影响等问题仍需进一步探索[9]。未来研究应聚焦于改进模型架构、开发针对性防御策略,并评估语音输入越狱攻击的实际危害。只有通过全面理解这些挑战,才能为多模态智能系统的安全性提供更可靠的保障。说到语音多模态LLM越狱的具体实现步骤,这其实是一个复杂且多层次的过程🧐。首先,攻击者需要深入分析目标模型的响应模式和安全机制,找出可能的漏洞点。

qq_29883477的博客 1261

1401. 圆和矩形是否有重叠

本题通过几何学中的距离计算,巧妙地解决了圆与矩形是否重叠的问题。算法只需计算圆心与矩形边界的最近距离,避免了繁琐的点集判断,时间与空间效率极高,代码简洁明了。

Lucy_wzw的博客 778

QcarCamera-EVS HAL实现(一)

高通车载EVS实现

qq_37057338的博客 2378

【1401. 圆和矩形是否有重叠】

【1401. 圆和矩形是否有重叠】

Sugar_wolf的博客 458

YOLOv8性能提升:引入华为GhostNetv1特征提取网络

本文提出一种轻量化改进方案,将GhostNetV1作为YOLOv8的主干网络,以提升移动端部署效率。通过Ghost模块的两步特征生成机制(初级卷积+廉价操作),显著降低了30%的计算量(FLOPs)和参数量,精度损失控制在1%以内。实验表明,改进后的模型在骁龙865芯片上推理速度提升25%。核心创新包括:1)用GhostBottleneck替换CSP模块;2)保留FPN+PAN结构确保多尺度检测能力;3)提供完整的PyTorch实现方案。该工作为资源受限场景的目标检测提供了实用解决方案,未来可结合注意力机制

shrgegrb的博客 1181

ROS2 多机器人导航仿真入门教程(一)

RMF 是建立在 ROS 2 基础上的一系列可重复使用、可扩展的库和工具,可实现任何类型机器人系统的异构机群的互操作性。RMF 利用标准化的通信协议与部署机器人的基础设施、环境和自动化系统进行通信,以优化关键资源(如机器人、电梯、门、通道等)的使用。它通过资源分配和通过 RMF 核心(将在本书后面详细介绍)防止共享资源冲突,从而为系统增加智能。RMF 灵活而强大,几乎可以在任何通信层上运行,并与任何数量的物联网设备集成。RMF 的架构设计允许随着环境自动化水平的提高而扩展。

2506_90492529的博客 1660

Leetcode.1401 圆和矩形是否有重叠

数学

感觉画质不如...原神的博客 684

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Leetcode 5361.圆和矩形是否有重叠

题目描述 给你一个以 (radius,x_center,y_center) 表示的圆和一个与坐标轴平行的矩形 (x1,y1,x2,y2),其中(x1,y1) 是矩形左下角的坐标,(x2,y2) 是右上角的坐标。 如果圆和矩形有重叠的部分,请你返回 True ,否则返回 False。 换句话说,请你检测是否存在点(xi, yi) ,它既在圆上也在矩形上(两者都包括点落在...

weixin_35338624的博客 363

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

【算法】Circle and Rectangle Overlapping 圆和矩形是否有重叠

因此可以枚举每一个边上的坐标点,一条边的范围是[1,给你一个以 (radius, xCenter, yCenter) 表示的圆和一个与坐标轴平行的矩形 (而在此方法中,也不需要枚举所有的边,可以判断圆和矩形的相对位置,来决定用哪一条边来验证。如果要确定是否有重叠,就需要在矩形上找到一个点,并且与圆心的距离<=radius.如果圆和矩形有重叠的部分,请你返回 true ,否则返回 false。) ,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。) 是矩形左下角的坐标,而 (),而矩形的左下角(

Cui's Blog 456

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

[LeetCode 1401]圆和矩形是否有重叠

给你一个以 (radius, xCenter, yCenter) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2) ,其中 (x1, y1) 是矩形左下角的坐标,而 (x2, y2) 是右上角的坐标。如果圆和矩形有重叠的部分,请你返回 true ,否则返回 false。换句话说,请你检测是否 存在 点 (xi, yi) ,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。

欢迎来到我的编程小屋 506

1401 圆和矩形是否有重叠

题目描述: 给你一个以 (radius, x_center, y_center) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2),其中 (x1, y1) 是矩形左下角的坐标,(x2, y2) 是右上角的坐标。 如果圆和矩形有重叠的部分,请你返回 True ,否则返回 False 。 换句话说,请你检测是否 存在 点 (xi, yi) ,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。 示例 1: 输入:radius = 1, x_center = 0, y_center = 0,

weixin_44171872的博客 334

【每日一题】1401. 圆和矩形是否有重叠

【每日一题】1401. 圆和矩形是否有重叠

❀雾里看花花里看雾❀ 291

python判断圆和矩形是否有重叠_Leetcode 1401:圆和矩形是否有重叠(超详细的解法!!!)...

给你一个以 (radius, x_center, y_center) 表示的圆和一个与坐标轴平行的矩形 (x1, y1, x2, y2),其中 (x1, y1) 是矩形左下角的坐标,(x2, y2) 是右上角的坐标。如果圆和矩形有重叠的部分,请你返回True,否则返回False。换句话说,请你检测是否 存在 点 (xi, yi) ,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。示例 1:输...

weixin_39731271的博客 341

leetcode 1401.圆和矩形是否有重叠

原题如下 1401.圆和矩形是否有重叠 题解 方法一 只需要求长方形和圆心的最短距离就行了。其实就是分别求边界x和xcenter之差的最小值,y同理。 xcenter<x1时,最小差是x1-xcenter,xcenter>x2时,是xcenter-x2,其余情况是0;y同理。 本思路java代码示例: /* *@v7fgg *执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户 *内存消耗:36.4 , 在所有 Java 提交中击败了100.00%的用户 *2020

zhuruihe2014的博客 373

LC-1401. 圆和矩形是否有重叠

矩形区域特点是x,y取值相互独立,又距离公式对x,y分别单调,分别取最小距离即可。,它既在圆上也在矩形上(两者都包括点落在边界上的情况)。基本思路:矩形区域内点离圆心最近的点距离小于等于圆的半径。表示的圆和一个与坐标轴平行的矩形。如果圆和矩形有重叠的部分,请你返回。是矩形左下角的坐标,而。可以简化最小距离获取过程。换句话说,请你检测是否。

qq_42958831的博客 174
上一篇: 回溯法及其经典例题
下一篇: 二叉搜索树与双向链表
追梦少年ML
博客等级 码龄7年 36粉丝 89原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值