Submission #1317779

#TimeUsernameProblemLanguageResultExecution timeMemory
1317779vtnooExhibition (JOI19_ho_t2)C++20
100 / 100
104 ms2748 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),[&](ii &a, ii &b){
		if(a.snd==b.snd)return a.fst<b.fst;
		return a.snd<b.snd;
	}); //tengo el mas caro y de mayor tamaño de los v_i
	int j=n-1,ans=0;
	for(int i=m-1;i>=0;i--){
		while(j>=0){
			if(c[i]>=v[j].fst){
				j--;
				ans++;
				break;
			}
			j--;
		}
	}
	cout<<ans<<endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...