Submission #1317765

#TimeUsernameProblemLanguageResultExecution timeMemory
1317765vtnooExhibition (JOI19_ho_t2)C++20
0 / 100
0 ms332 KiB
#include <bits/stdc++.h>
#define ll long long
#define all(x) x.begin(), x.end() 
#define ii pair<ll,ll>
#define fst first
#define snd second
#define sz(x) (int)x.size()
using namespace std;
const int MAXN=1e5+5;
int main(){
	int n,m;cin>>n>>m;
	vector<ii>v(n);
	for(int i=0;i<n;i++)cin>>v[i].fst>>v[i].snd;
	vector<ll>c(m);
	for(int i=0;i<m;i++)cin>>c[i];		
	sort(all(c));
	sort(all(v));
	int ans=0;
	priority_queue<int,vector<int>,greater<int>>q;
	int j=0,ult=0;
	for(int i=0;i<m;i++){
		while(j<n&&v[j].fst<=c[i]){
			q.push(v[j].snd);
			j++;
		}	
		while(sz(q)&&q.top()<ult)q.pop();
		if(sz(q)){
			ult=q.top();
			ans++;
			q.pop();
		}
	}
	cout<<ans<<endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...