标签:span 区间 -- max 最大 turn cout space main
注意到N最大只有1e6,但是xy最大有2e8,直接模拟2e8会超时
所以可以将1e6个区间离散化后模拟,模拟时的最坏情况为2e6满足题意
1 /* 2 Written By StelaYuri 3 */ 4 #include<iostream> 5 #include<algorithm> 6 using namespace std; 7 int x[1000010],y[1000010],a[2000010],b[2000010]; 8 int main() 9 { 10 ios::sync_with_stdio(0);cin.tie(0); 11 int n,i,j,m,ans=0; 12 cin>>n; 13 for(i=1;i<=n;i++) 14 { 15 cin>>x[i]>>y[i]; 16 a[i*2-1]=x[i]; 17 a[i*2]=y[i]; 18 } 19 sort(a+1,a+1+n*2); 20 m=unique(a+1,a+1+n*2)-a-1; 21 for(i=1;i<=n;i++) 22 { 23 b[lower_bound(a+1,a+1+m,x[i])-a]++; 24 b[lower_bound(a+1,a+1+m,y[i])-a+1]--; 25 } 26 b[0]=0; 27 for(i=1;i<=m;i++) 28 { 29 b[i]+=b[i-1]; 30 ans=max(ans,b[i]); 31 } 32 cout<<ans; 33 34 return 0; 35 }
标签:span 区间 -- max 最大 turn cout space main
原文地址:https://www.cnblogs.com/stelayuri/p/12235274.html