CF1462F The Treasure of The Segments 题解
首先有一个重要的转化:最少的删除次数就是相离的线段条数,那么我们可以贪心地找相离条数最小的即为答案。
这样就很简单了,考虑
核心代码如下。
cin>>n;
F(i,1,n){
cin>>L[i]>>R[i];
x[i]={L[i],R[i]};
}
sort(L+1,L+n+1);
sort(R+1,R+n+1);
int ans=inf;
F(i,1,n){
int a=upper_bound(L+1,L+n+1,x[i].r)-L-1;a=n-a;
int b=lower_bound(R+1,R+n+1,x[i].l)-R-1;
ans=min(ans,a+b);
}
cout<<ans<<'\n';