zoj3953贪心
来源:互联网 发布:知乎评价章泽天长相 编辑:程序博客网 时间:2024/06/02 03:20
n个区间[li , ri],最少删除多少个区间,使得任何三个区间都不两两相交。
#include <stdio.h>#include <string>#include <stdlib.h>#include <vector>#include <algorithm>struct Line{int left , right , idx ;Line(){} ;Line(int left , int right , int idx){this->left = left ;this->right = right ;this->idx = idx ;}};Line lines[50008] ;bool withLeftfromLessToBig(Line first , Line second) {return first.left < second.left ;}bool withRightfromBigToLess(Line first , Line second) {return second.right < first.right ;}bool intersect(Line a , Line b , Line c){ return b.left <= a.right && c.left <= b.right && c.left <= a.right ;}void solve() { int t , n , l , r ; scanf("%d" , &t) ; while (t-- > 0) { scanf("%d" , &n) ; for(int i = 0 ; i < n ; i++){ scanf("%d%d" , &l , &r) ; lines[i] = Line(l , r , i+1) ; } if(n <= 2){ puts("") ; continue ; } std::vector<int> res; std::sort(lines , lines + n ,withLeftfromLessToBig) ; Line g[3] ; g[0] = lines[0] ; g[1] = lines[1] ; for(int i = 2 ; i < n ; i++){ g[2] = lines[i] ; std::sort(g , g + 3 , withLeftfromLessToBig) ; bool isIntersect = intersect(g[0] , g[1] , g[2]) ; std::sort(g , g + 3 , withRightfromBigToLess) ; if(isIntersect){ res.push_back(g[0].idx) ; g[0] = g[2] ; } } std::sort(res.begin() , res.end()) ; if(! res.empty()){ int size = res.size() ; printf("%d\n" , size) ; printf("%d" , res[0]) ; for(int i = 1 ; i < size ; i++){ printf(" %d" , res[i]) ; } } puts("") ; }}int main(){ solve() ; return 0;}
0 0
- zoj3953贪心
- zoj3953 贪心 training 3
- ZOJ3953 Intervals 【贪心 双线程活动分配问题】
- 【ZOJ3953 The 17th Zhejiang University Programming Contest F】【贪心 or 费用流】Intervals 删最少线段使得每点最多2次覆盖
- zoj3953 Intervals 最大不重叠区间加强版 zoj排名第一~
- 贪心!
- 贪心~
- 贪心
- 贪心
- 贪心
- 贪心
- 贪心
- 贪心
- 贪心
- 贪心
- 贪心
- 贪心
- 贪心
- 明文和密文是什么意思,以及flex与后台交互,Flex根据明文和密钥,采用DES加密算法进行加密,生成密文。
- linux如何去空格
- yolo windows 版本
- [几何] BZOJ 4814 [Cqoi2017]小Q的草稿
- 在基于springboot构建的maven工程中使用mybatis框架
- zoj3953贪心
- 模板方法模式(Template Method Pattern,类行为型模式)
- 插件描述:fancyBox是一款优秀的弹出框Jquery插件。
- 【加载读取Properties】关于Properties文件的读取
- jQuery属性操作
- Java虚拟机初识
- 界面控件之——TextView的属性与应用
- TI OSAL解析
- ZOJ3956背包