首页 > 其他分享 >3111. 覆盖所有点的最少矩形数目

3111. 覆盖所有点的最少矩形数目

时间:2024-07-31 23:49:53浏览次数:12  
标签:vector 覆盖 int x1 3111 最少 矩形 points

给你一个二维整数数组 point ,其中 points[i] = [xi, yi] 表示二维平面内的一个点。同时给你一个整数 w 。你需要用矩形 覆盖所有 点。

每个矩形的左下角在某个点 (x1, 0) 处,且右上角在某个点 (x2, y2) 处,其中 x1 <= x2 且 y2 >= 0 ,同时对于每个矩形都 必须 满足 x2 - x1 <= w 。

如果一个点在矩形内或者在边上,我们说这个点被矩形覆盖了。

请你在确保每个点都 至少 被一个矩形覆盖的前提下,最少 需要多少个矩形。

注意:一个点可以被多个矩形覆盖。

 

思路:贪心算法

bool cmp(vector<int>& a, vector<int>& b) { return a[0] < b[0]; }
class Solution {
public:
    int minRectanglesToCoverPoints(vector<vector<int>>& points, int w) {
        int res = 1;
        sort(points.begin(), points.end(), cmp);
        int l = points[0][0];
        for (int i = 1; i < points.size(); i++) {
            if (points[i][0] <= l + w)
                continue;
            l = points[i][0];
            res++;
        }
        return res;
    }
};

 

标签:vector,覆盖,int,x1,3111,最少,矩形,points
From: https://www.cnblogs.com/mysteryily/p/18335754

相关文章

  • LeetCode 3111. 覆盖所有点的最少矩形数目(贪心、排序)
    题目:3111.覆盖所有点的最少矩形数目思路:只需关注横坐标,对横坐标进行升序排序,然后进行贪心,求得最少的矩阵数量classSolution{public:intminRectanglesToCoverPoints(vector<vector<int>>&points,intw){vector<int>v;for(inti=0;i<poi......
  • Leetcode每日一题 20240731 3111.覆盖所有点的最少矩阵数目
    题目描述给你一个二维整数数组point,其中points[i]=[xi,yi]表示二维平面内的一个点。同时给你一个整数w。你需要用矩形覆盖所有点。每个矩形的左下角在某个点(x1,0)处,且右上角在某个点(x2,y2)处,其中x1<=x2且y2>=0,同时对于每个矩形都必须满足x2......
  • 碰撞检测 | 矩形增量膨胀安全走廊模型(附C++/Python仿真)
    目录0专栏介绍1安全走廊建模的动机2矩形增量膨胀算法3算法仿真3.1C++实现3.2Python实现0专栏介绍......
  • 选择一个随机矩形但按面积加权:
    在用Leetcode做一些练习时,我遇到了一个问题,需要从一组不重叠的矩形中选择内部的随机整数点(https://leetcode.com/problems/random-point-in-non-overlapping-矩形/描述/)。虽然选择随机整数点有点微不足道,但问题要求点选择在所有矩形的整个区域中具有相同的可能性。......
  • numpy 中用最少内存对上三角元素求和的最快方法
    我需要对对称矩阵进行类型求和i<j这相当于对矩阵的上三角元素求和,不包括对角线。给定A对称NxN数组,最简单的解决方案是np.triu(A,1).sum()但是我想知道是否存在需要更少内存的更快方法。看起来(A.sum()-np.diag(A).sum())/2......
  • 2844. 生成特殊数字的最少操作 Medium
    给你一个下标从 0 开始的字符串 num ,表示一个非负整数。在一次操作中,您可以选择 num 的任意一位数字并将其删除。请注意,如果你删除 num 中的所有数字,则 num 变为 0。返回最少需要多少次操作可以使 num 变成特殊数字。如果整数 x 能被 25 整除,则该整数 x ......
  • [题解]P3187 [HNOI2007] 最小矩形覆盖
    P3187[HNOI2007]最小矩形覆盖调了半天居然是因为没判断浮点精度误差才\(\colorbox{IndianRed}{\texttt{\color{White}{WA}}}\)了\(3\)个点,其他都没有问题!警钟长鸣……首先有一个结论:凸多边形的最小外接矩形一定和它的一条边重合。这个结论,网上几乎找不到完整的证明,目前发现......
  • 龙哥量化:股票调整结构模型:矩形调整形态(图解)
    如果您需要代写技术指标公式,请联系我。龙哥QQ:591438821龙哥微信:Long622889矩形是股价在两条水平的直线之间运动的形态。股价上升到某个水平价位时遇到阻力回落,回落到某一水平价位时受到支撑开始反弹,当反弹到上次同一价位附近时再次回落,回落到上次同一价位附近时再次反弹,如......
  • Android开发 - onDraw通过RectF绘画矩形(RectF解析)
    RectF的参数解析RectF(floatleft,floattop,floatright,floatbottom);:可见四个参数均为float(浮点数)类型,其参数为:left:左边坐标;在绘制中常表示为起点的Y轴坐标top:上边左边;在绘制中常表示为起点的X轴坐标right:右边坐标;在绘制中常表示为终点的Y轴坐标bottom:下边坐标;在绘......
  • 力扣LCR 039. 柱状图中最大的矩形
    思路用到了单调栈。由于最大矩形它的高一定是height数组中的其中一个值,那么我们就可以遍历数组height的值再乘上它的宽的最大值WidthMax(宽的最大值后面会讲),然后取最大值就是答案,也就是ans=max(ans,WidthMax*height[x])。那么如何求高为height[x]的宽的最大值WidthMax呢?解题过程......