您当前的位置: 首页 > 

*DDL_GzmBlog

暂无认证

  • 2浏览

    0关注

    605博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

[Acwing] 第 50 场周赛

*DDL_GzmBlog 发布时间:2022-05-08 13:39:26 ,浏览量:2

前言

传送门 :

B.选区间

题意 : 给定 n n n个一类区间 ( l 1 , i , r 1 , i ) (l_{1,i},r_{1,i}) (l1,i​,r1,i​) 给定 m m m个二类区间 ( l 2 , i , r 2 , i ) (l_{2,i},r_{2,i}) (l2,i​,r2,i​)

从 n , m n,m n,m区间中各挑一个区间使得 两个区间之间的距离尽可能大

思路 :

考虑 从 ( l 1 , i , r 1 , i ) (l_{1,i},r_{1,i}) (l1,i​,r1,i​)中取出 l 1 , r 1 l1,r1 l1,r1 从 ( l 2 , i , r 2 , i ) (l_{2,i},r_{2,i}) (l2,i​,r2,i​)中取出 l 2 , r 2 l2,r2 l2,r2

显然的对于区间长度的计算是 l − r l-r l−r 因此为了该点尽可能大,我们就需要令 l l l尽可能大而 r r r尽可能小

code :

void solve(){
	int l1 = -INF, r1 = INF;
	int n;cin>>n;
	for(int i=1;i>l>>r;
		l1 = max(l1,l);
		r1 = min(r1,r);
	}
	
	int l2 = -INF, r2 = INF;
	int m;cin>>m;
	for(int i=1;i>l>>r;
		l2 = max(l2,l);
		r2 = min(r2,r);
	}
	

	// cout            
关注
打赏
1657615554
查看更多评论
0.0445s