比赛 20170912 评测结果 AAWWWWWWWA
题目名称 平凡的题面 最终得分 30
用户昵称 123 运行时间 0.574 s
代码语言 C++ 内存使用 11.76 MiB
提交时间 2017-09-12 20:21:04
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cmath>
using namespace std;
int f[1000000]={0},n,m;
int dp[1000000]={0},ya[1000000]={0};
int ans=0;
int main(){
	freopen ("bg.in","r",stdin);
	freopen ("bg.out","w",stdout);
	int a,b,c;
	scanf("%d%d",&n,&m);
	int i,j;
	for(a=1;a<=n;a++)
	{
		cin>>b;
		dp[b]++;
	}
	for(a=1;a<=m;a++)
	{
		cin>>b>>c;
		f[b]++;
		f[c+1]--;
		ya[c]--;
	}
	for(a=1;a<=100010;a++)
		f[a]+=f[a-1];
	i=0;j=0;
	for(a=1;a<=100010;a++)
	{
		if(f[a]!=0)
		i+=dp[a];
		if(i>f[a])
			i=f[a];
		if(ya[a]<0)
		{
			ans+=min(i,-ya[a]);
			i=max(i+ya[a],0);
		}
	}
	cout<<ans;
	return 0;
}