首页 > 其他分享 >435. 无重叠区间c

435. 无重叠区间c

时间:2024-03-17 16:23:33浏览次数:22  
标签:right return 重叠 int bounds intervalsSize intervalsColSize 区间 435

typedef struct node{
    int left;
    int right;
}bounds;

int cmp(const void* a,const void* b){
    bounds* x=(bounds*)a;
    bounds* y=(bounds*)b;
    if(x->right > y->right ) return 1;
    return -1;
}

int eraseOverlapIntervals(int** intervals, int intervalsSize, int* intervalsColSize) {
    *intervalsColSize=intervalsSize;
    bounds* b=(bounds*)malloc(sizeof(bounds)*intervalsSize);
    for(int i=0;i<intervalsSize;i++){
        b[i].left=intervals[i][0];
        b[i].right=intervals[i][1];
    }
    qsort(b,intervalsSize,sizeof(bounds),cmp);
    int sum=0;
    long min=LONG_MIN;
    for(int i=0;i<intervalsSize;i++){
        if(b[i].left >= min){
            sum++;
            min=b[i].right;
        }
    }
    return intervalsSize-sum;
}  

标签:right,return,重叠,int,bounds,intervalsSize,intervalsColSize,区间,435
From: https://www.cnblogs.com/llllmz/p/18078718

相关文章

  • lc795 区间子数组个数
    给定数组nums[n]和两个整数left,right,找出nums中连续非空、并且最大元素在[left,right]范围内的子数组,统计所有满足条件子数组的个数。1<=n<=1e5;0<=nums[i]<=1e9;0<=left<=right<=1e9;保证答案在int内枚举每个元素作为最大元素的情况,统计对应的子数组数量,如果arr[i]在允许范......
  • P3374 【模板】树状数组 动态求连续区间和 刷题笔记
    我们创建如下的树状数组来辅助操作该数组每个s[i]处于第几层取决于其二进制最后低位的1处于从右往左数第几列显然所有奇数的最右边一位都是1即其最低位的1处于右边第一列所以所有的奇数处于第一层而2,6,10,14的最低位1处于右边第二列 所以这些数处于第二层 8的最......
  • lc327 区间和的个数
    给定数组nums[n]和整数lower与upper,求nums[n]中,元素之和在[lower,upper]范围内的子数组个数。1<=n<=1e5;nums[i]在int范围内;-1e5<=lower<=upper<=1e5;答案在int范围内子数组的和可以用前缀和来快速求出,假设当前位置对应的前缀和为y,前面某处对应的前缀和为x,满足lower<=y-x<=u......
  • C++ | 蓝桥题库区间或(位运算)
    一开始看题解很晕,这里采用前缀和方式的思想是:按位贡献,将答案分成32份(1e9最多32位二进制数)这样才有的prefix[32][N]前缀和数组,求的是第i位数第w位上的和。(1<<w)1左移w位相当于2的w次方,prefix[w][r]-prefix[w][l-1]相当于[l,r]这段距离上有1就让ans加上1,没有就不加。#inc......
  • 蓝桥练习题-K倍区间
    16.k倍区间-蓝桥云课(lanqiao.cn)首先,看到这个题,想到暴力求解,但显然,数据过大,暴力法过不了;然后看到了一个办法:对所有元素的前缀和取K的模,若s[i],s[j]相同,则在j-1到i的区间内,区间和为K的倍数。C++代码:#include<iostream>#include<queue>usingnamespacestd;ty......
  • 2024/3/11打卡管道(14届蓝桥杯省赛)——二分+区间合并
    目录题目思路代码题目有一根长度为 len的横向的管道,该管道按照单位长度分为 len 段,每一段的中央有一个可开关的阀门和一个检测水流的传感器。一开始管道是空的,位于 Li 的阀门会在  时刻打开,并不断让水流入管道。对于位于  的阀门,它流入的水在 时刻会使得......
  • 区间 DP
    P3146[USACO16OPEN]248G给定一个序列,每次可以将两个相邻且相同的数合并成一个数,合并结果为原数加一。求最后能得到的最大数字。\(n\le248\),\(1\lea_i\le40\)。最暴力的,设状态\(f_{l,r,k}\)表示区间\([l,r]\)能否最终合并为数字\(k\)。也就是说\(f_{l......
  • 从CF1935B学习维护前后缀区间mex
    Problem-B-Codeforces维护前缀区间mex和后缀区间mex,枚举二者相同的断点原理随区间增长,\(\texttt{mex}\)只可能增,不可能减,所以可以用一个变量维护目前的\(mex\),区间扩大后可以直接沿用较小区间的\(mex\),再处理增加即可。维护\(\texttt{mex}\)std::set<int>S;//当前......
  • 线段树维护区间等差数列
    线段树维护区间等差数列我们采用用两个懒标记分别维护等差数列首项k和公差d维护时有个细节是假如我有左右两个区间需要合并信息时我们对于左边还是k和d但是对于右边信息此时k应该变成k+len*d,公差还是dlen表示的是右边区间长度牛牛的等差数列#include......
  • 通达信买卖区间信号指标公式源码副图
    {通达信买卖区间信号指标公式源码副图}A14:=MA(CLOSE,20);A15:=(CLOSE>MA(CLOSE,5));A16:=(MA(CLOSE,5)>MA(CLOSE,10));A17:=(CLOSE>MA(CLOSE,10));A18:=(MA(CLOSE,5)>MA(CLOSE,20));A19:=(CLOSE>MA(CLOSE,20));A10:=REF(A14,1);A11:=(A14>A10);AVX:......