Submission #391339

#TimeUsernameProblemLanguageResultExecution timeMemory
391339keta_tsimakuridzeExhibition (JOI19_ho_t2)C++14
100 / 100
164 ms5588 KiB
#include<bits/stdc++.h>
#define f first
#define int long long
#define s second
using namespace std;
const int N=2e5+5,mod=1e9+7;
int t,c[N],ans,n,m;
pair<int,int>p[N];
bool check(int ind){
	int cnt = 0, l=1;
	for(int i=ind;i>=1;i--){
		while(l<=n && p[l].s > c[i]) l++;
		if(l<=n && p[l].s<=c[i]) cnt++,l++;
	}
	if(cnt==ind) return 1;
	return 0;
}
string s;
 main(){
	// t=1;
	cin >> n>>m;
	for(int i=1;i<=n;i++){
		cin>>p[i].s >> p[i].f;
	}
	sort(p+1,p+n+1);
	for(int i=1;i<=m;i++){
		cin>>c[i];
	}
	sort(c+1,c+1+m);
	reverse(c+1,c+m+1);
	int l=1,r=min(n,m);
	while(l<=r){
		int mid=(l+r)/2;
		if(check(mid)) {
			ans=mid;
			l=mid+1;
		}
		else r=mid-1;
	}
	cout<<ans;
}

Compilation message (stderr)

joi2019_ho_t2.cpp:19:7: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   19 |  main(){
      |       ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...