洛谷——线段覆盖

题目描述 已知数轴上0Bi,i=1..N)定义。端点坐标在(-999,999)内,坐标为整数。有些线段可能相交。编程实现删除最少数目的线段,使得余下的任意两条线段不相交。
输入输出格式 输入格式:

第一行为一整数N。接下来有N行,每行包含两个整数 (Ai 和 Bi), 用空格隔开。

输出格式:

整数p,即删除后余下的线段数。

输入输出样例 输入样例#1:

3 6 3 1 3 2 5

输出样例#1:
2


代码

#include #include #include #include #include using namespace std; int n,sum; struct nn { int b,e; }a[1001]; int cmp(nn x,nn y) { if(x.e==y.e) return x.ba[i].e) swap(a[i].b,a[i].e); } sort(a+1,a+1+n,cmp); int p=-10001; for(int i=1; i<=n; i++) { if(p<=a[i].b) { sum++; p=a[i].e; } } printf("%d",sum); return 0; }



【洛谷——线段覆盖】转载于:https://www.cnblogs.com/z360/p/6711220.html

    推荐阅读