Submission #626218

#TimeUsernameProblemLanguageResultExecution timeMemory
626218l_rehoExhibition (JOI19_ho_t2)C++14
100 / 100
63 ms5612 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define x first
#define y second

vector<pair<ll, ll>> P;
vector<ll> C;

int dp[100002];

void solve(){
	int N, M;
	cin>>N>>M;
	
	P.assign(N, pair<ll, ll>());
	
	
	C.assign(M, 0);
	
	
	for(int i = 0; i < N; i++)
		cin>>P[i].x>>P[i].y;
		
	for(int j = 0; j < M; j++)
		cin>>C[j];
	
	sort(C.begin(), C.end());
	sort(P.begin(), P.end(), [&](pair<ll, ll> p1, pair<ll, ll> p2){
		return p1.second < p2.second || (p1.second == p2.second && p1.first < p2.first);
	});
	
	int ans = 0;
	int j = M-1;
	
	for(int i = N-1; i >= 0; i--){
		
		if(j >= 0 && P[i].first <= C[j]){
			j--;
			ans++;
		}
		
	}
	
	cout<<ans<<endl;
	
}

int main(){
	ios_base::sync_with_stdio(false);
    cin.tie(NULL);
	
	solve();
	
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...