1615:求区间

作者: Celia_QAQ | 来源:发表于2019-07-04 20:13 被阅读0次

题目:
Description
在X轴上有n个闭区间,去掉尽可能少的区间使剩下的区间都不相交
Input
多组测试数据
第一行输入n(n<=1000)
接下来n行每行两个数a,b代表闭区间的两个端点。
(a,b<=1000000
Output
输出最小的删除的区间数
Sample Input
3
10 20
15 10
20 15
Sample Output
2


参考博客:https://blog.csdn.net/qq_41117236/article/details/81153752

思路:根据右边界做升序排序,每次作出的选择即为局部最优解,因为每一次的状态只依赖于前一次选取的状态,所以最后得到的结果为整体最优解。

AC代码:(侵删)

#include<vector>
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<map>
#include<algorithm>
using namespace std;
typedef long long ll;
const int maxn=300050;
struct qj{
    int x,y;
}q[maxn];
bool cmp(qj a,qj b){
    return a.y<b.y;
}
int main(){
   int t,temp;
    int m,n;
   while(~scanf("%d",&t)){
       for(int i=0;i<t;i++){
            scanf("%d%d",&q[i].x,&q[i].y);
            if(q[i].x>q[i].y) 
               temp=q[i].x, q[i].x=q[i].y, q[i].y=temp;
       }
   sort(q,q+t,cmp);
   int count=0,min=-1000005;
   for(int i=0;i<t;i++){
        q[i].x>min? min=q[i].y:count++;//重点 
        
    }
    printf("%d\n",count); 
    }
     return 0;
}

相关文章

  • 1615:求区间

    题目:Description在X轴上有n个闭区间,去掉尽可能少的区间使剩下的区间都不相交Input多组测试数据第一...

  • Fenwick Tree/B.I.T树状数组算法

    树状数组适用范围:给定区间,求最值,求和,区间单点修改。与RMQ不同的是,RMQ一般只用作区间求最值。但在最值方面...

  • 求单调区间

    类型一不含参型之直接型与二次求导型 类型二含参型

  • 最值

    WIKI 1 利用导数求函数在闭区间上的最值 利用导数求函数在开区间的最值 应用

  • 2019-03-01

    高考数学,导数,求函数单调区间的通用解法,三种重要题型 高考数学,导数,求函数单调区间的通用解法,三种重要题型;主...

  • 1615

    1615是个房间号,我们在昨天——12月25号搬进去的,这里成了我们摄影班的新家。 1615是个复式小楼。我们把上...

  • 从一道水题来从头介绍树状数组

    树状数组用来求区间元素和,求一次区间元素和的时间效率为O(logn)。特别用于在数组内的参数变换后,再次求和所使用...

  • 最大区间和C语言

    要求:给定任意一个区间,求该区间中最大和的区间值 方法:以下为逐渐优化的过程 1、没有任何变化的一个一个区间去比较...

  • 9.3 - 高算6

    继续讲动态规划,这节课讲了三种类型的动态规划: 区间类:求一段区间的解max/min/count转移方程通过区间更...

  • 线段树

    专题 B线段树求逆序对 C[] D 区间不同值求和

网友评论

    本文标题:1615:求区间

    本文链接:https://www.haomeiwen.com/subject/ccrdhctx.html