1 #include<iostream> 2 #include<cstdio> 3 #include<set> 4 #include<algorithm> 5 using namespace std; 6 multiset<int>q; 7 struct node{ 8 int s,t; 9 }peo[100005]; 10 bool cmp(node a,node b){ 11 return a.s>b.s; 12 } 13 int s[100005],c[100005]; 14 int main(){ 15 int n,m; 16 cin>>n>>m; 17 // set<int>q; 18 // set<int>::iterator it; 19 // for(it=q.begin();it!=q.end();it++){ 20 // int x=*it; 21 // } 22 for(int i=1;i<=n;i++){ 23 cin>>s[i]>>c[i]; 24 for(int j=1;j<=c[i];j++) 25 q.insert(s[i]); 26 } 27 for(int i=1;i<=m;i++) 28 cin>>peo[i].s>>peo[i].t; 29 sort(peo+1,peo+m+1,cmp); 30 int ans=0; 31 for(int i=1;i<=m;i++){ 32 int x=peo[i].s,y=peo[i].t; 33 if(q.lower_bound(y)!=q.end()){ 34 set<int>::iterator it=q.lower_bound(y); 35 q.erase(it); 36 q.insert(x); 37 ans++; 38 } 39 } 40 cout<<ans; 41 return 0; 42 }
over
原文:https://www.cnblogs.com/saionjisekai/p/9710423.html