比赛 20170912 评测结果 AAAAAAAAAA
题目名称 平凡的题面 最终得分 100
用户昵称 TARDIS 运行时间 0.248 s
代码语言 C++ 内存使用 1.46 MiB
提交时间 2017-09-12 20:14:44
显示代码纯文本
#include<cstdio>
#include<cmath>
#include<iostream>
#include<cstring>
#include<algorithm>
#include<queue>
#define XLM
using namespace std;
const int maxn=100010;
priority_queue <int,vector<int>,greater<int> > que;
int val[maxn],n,m,ans;
pair<int,int> t[maxn];

int main(){
	#ifdef XLM
	freopen("bg.in","r",stdin);
	freopen("bg.out","w",stdout);
	#endif
	scanf("%d%d",&n,&m);
	for (int i=1;i<=n;i++) scanf("%d",&val[i]);
	for (int i=1;i<=m;i++){
		scanf("%d%d",&t[i].first,&t[i].second);
	}
	sort(val+1,val+n+1);
	sort(t+1,t+m+1);
	int pos=1;
	for (int i=1;i<=n;i++){
		while (pos<=m && t[pos].first<=val[i]) 
			que.push(t[pos++].second);
		int v=0;
		do{
			if (que.empty()) break;
			v=que.top();
			que.pop();
		}while(v<val[i]);
		if (v>=val[i]) ans++;
	}
	printf("%d",ans);
}