比赛 平凡的题目 评测结果 WAWWWTTTTW
题目名称 平凡的题面 最终得分 10
用户昵称 Jobs.T 运行时间 4.068 s
代码语言 C++ 内存使用 2.08 MiB
提交时间 2015-11-03 10:51:16
显示代码纯文本
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
using namespace std;
const int kN=1e5+1;
int n,m,len[kN],l[kN],r[kN],cnt=0,a[kN],t=0,x=1,y[kN];
bool able[kN];
int main()
{
	freopen("bg.in","r",stdin);
	freopen("bg.out","w",stdout);
	cin>>n>>m;
	for(int i=1;i<=n;i++)
		cin>>len[i];
	for(int i=1;i<=m;i++)
	{
		cin>>l[i]>>r[i];
		able[i]=true;
	}
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=m;j++)
		{
			if(able[j]&&len[i]>=l[j]&&len[i]<=r[j])
			{
				a[++t]=r[j]-l[j];
				y[t]=j;
			}
		}
		for(int j=1;j<=t;j++)
		{
			if(a[x]>a[j]) x=j;
		}
		if(t!=0)
		{
			cnt++;
			x=y[x];
			able[x]=false;
		}
		t=0;
		x=1;
		memset(a,0,sizeof(a));
	}
	cout<<cnt<<endl;
	return 0;
}