比赛 20120309 评测结果 AAAAA
题目名称 积木分发 最终得分 100
用户昵称 Cloud 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2012-03-09 19:37:56
显示代码纯文本
#include<fstream>
#include<cstdlib>
using namespace std;
struct yu
{
	int k;
	int l;
}y[10001];
int cmp(const void*a,const void*b)
{
	struct yu *c=(struct yu *)a;
	struct yu *d=(struct yu *)b;
	if(c->l!=d->l)return c->l - d->l;
	else return d->k - c->k;
}
int main(void)
{
	ifstream fin("toybrick.in");
	ofstream fout("toybrick.out");
	int n=1,s;
	int i;
	bool f;
	while(n)
	{
		fin>>n>>s;
		f=0;
		if(n==0)break;
		for(i=0;i<n;i++)
			fin>>y[i].k>>y[i].l;
		qsort(y,n,sizeof(y[0]),cmp);
		for(i=0;i<n;i++)
		{
			if(y[i].l<=s)
				s+=y[i].k;
			else 
			{
				f=1;
				break;
			}
		}
		if(f)fout<<"NO"<<endl;
		else fout<<"YES"<<endl;
	}
	fin.close();
	fout.close();
	return 0;
}