CF1029C Maximal Intersection
https://www.luogu.org/problem/show?pid=CF1029C
#include<bits/stdc++.h>
using namespace std ;
#define LL long long LL read(){
char c ;
int sign = ;
while((c = getchar()) > '' || c < '')
if(c == '-') sign = - ;
LL ans = c - '' ;
while((c = getchar()) <='' && c >= '')
ans = ans * + c - '' ;
return ans * sign ;
} int n ;
LL l[] , r[] ;
LL la = , ra = 10e9 + ; void answer(){
la = , ra = 10e9 + ;
for(int i = ; i <= n ; ++ i){
la = max(la , l[i]) ;
ra = min(ra , r[i]) ;
}
} int main(){
n = read() ;
LL ansl = , ansr = ;
r[] = 10e9 + ;
l[] = ;
for(int i = ; i <= n ; ++ i){
l[i] = read() , r[i] = read() ;
}
answer() ;
if(la > ra) {
printf("%d",);
return ;
}
for(int i = ; i <= n ; ++ i){
if(l[i] == la){
if(r[i] < r[ansl]) {
ansl = i ;
}
}
if(r[i] == ra){
if(l[i] > l[ansr]){
ansr = i ;
}
}
}
if(ansr == ansl){
l[ansr] = ;
r[ansr] = 10e9 + ;
answer() ;
printf("%ld",ra - la) ;
return ;
}
else {
LL ii = l[ansr] ;
LL ff = r[ansr] ;
l[ansr] = , r[ansr] = 10e9 + ;
answer() ;
LL len = ra - la ;
l[ansr] = ii , r[ansr] = ff ;
l[ansl] = , r[ansl] = 10e9 + ;
answer() ;
len = max(len , ra - la) ;
printf("%ld",len) ;
return ;
}
}
CF1029C Maximal Intersection的更多相关文章
- CF1029C Maximal Intersection 暴力枚举
Maximal Intersection time limit per test 3 seconds memory limit per test 256 megabytes input standar ...
- Codeforces Round #506 (Div. 3) C. Maximal Intersection
C. Maximal Intersection time limit per test 3 seconds memory limit per test 256 megabytes input stan ...
- Codeforces | CF1029C 【Maximal Intersection】
论Div3出这样巨水的送分题竟然还没多少人AC(虽说当时我也没A...其实我A了D...逃) 这个题其实一点都不麻烦,排序都可以免掉(如果用\(priority \_ queue\)的话) 先考虑不删 ...
- CodeForces C. Maximal Intersection
http://codeforces.com/contest/1029/problem/C You are given nn segments on a number line; each endpoi ...
- F - Maximal Intersection --------暴力求解题
You are given n segments on a number line; each endpoint of every segment has integer coordinates. S ...
- C. Maximal Intersection(STL)
这道题,关键在于怎么求多个区间的交集,使用multiset就可以 分别将 r , l 存在不同的mutiset中. 然后,我们来看一下 是不是 交集的 l 是最大的, 交集的 r 是最小的 #incl ...
- CF C. Maximal Intersection(贪心 || STL)
题意 给你N个线段(一条直线上),问删去一个之后,最长公共长度 : 分析:首先我们得先知道n条线段公共的线段一定是(LMAX,RMIN) ,那我们可以先排序,然后枚举删除边: #include< ...
- Codeforces Round #506 (Div. 3) 题解
Codeforces Round #506 (Div. 3) 题目总链接:https://codeforces.com/contest/1029 A. Many Equal Substrings 题意 ...
- cf 1029 C
C. Maximal Intersection time limit per test 3 seconds memory limit per test 256 megabytes input stan ...
随机推荐
- 060 Permutation Sequence 排列序列
给出集合 [1,2,3,…,n],其所有元素共有 n! 种排列.按大小顺序列出所有排列情况,并一一标记,可得到如下序列 (例如, n = 3): 1."123" 2. & ...
- keil-rtx
OS:任务级设计,任务间耦合小:改变裸机前后台设计方案中后台任务轮训无优先级重要任务得不到确定性响应:伪并行,提高利用率. 在keilv4.74最后一个版本之后,KIELV5将KEIL-RTX该为CM ...
- 获取jqGrid中选择的行的数据
下面可以获取选择一行的id,如果你选择多行,那下面的id是最后选择的行的id: var id=$(‘#gridTable’).jqGrid(‘getGridParam’,'selrow’); 如果想要 ...
- AJPFX深入理解之abstract class和interface的区别
含有abstract修饰符的class即为抽象类,abstract 类不能创建的实例对象.含有abstract方法的类必须定义为abstract class,abstract class类中的方法不必 ...
- 快色排序算法(C语言描述)
快速排序 算法思想 快速排序采用了一种分治策略,学术上称之为分治法(Divide-and-Conquer Method). 哨兵(如下算法中的key) 每趟排序将哨兵插入到数组的合适位置,使得哨兵左侧 ...
- ajax在购物车中的应用
代码如下: 购物车页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...
- 什么是Office Online Server和SharePoint 2016
Microsoft Office Online Server是Microsoft Office Web Apps(OWA)服务器的下一个版本,最初于2012年发布.,可以下载Office Online ...
- VC++堆栈大小设置
VC++堆栈默认大小是1M,如果你分配大于1M的堆,一般会出异常,这里你要把堆调大些,下面是VC++6.0与VC++2010的设置方法 VC++6.0: 工程==>设置==>“连接”界面, ...
- BZOJ 4070:[APIO2015]雅加达的摩天楼 最短路
4070: [Apio2015]雅加达的摩天楼 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 464 Solved: 164[Submit][Sta ...
- 【转】iOS开发-文件管理(一)
iOS开发-文件管理(一) 一.iOS中的沙盒机制 iOS应用程序只能对自己创建的文件系统读取文件,这个独立.封闭.安全的空间,叫做沙盒.它一般存放着程序包文件(可执行文件).图片.音频.视频.pli ...