记录编号 |
36179 |
评测结果 |
AAAWW |
题目名称 |
积木分发 |
最终得分 |
60 |
用户昵称 |
feng |
是否通过 |
未通过 |
代码语言 |
C++ |
运行时间 |
0.167 s |
提交时间 |
2012-03-10 08:17:03 |
内存使用 |
0.34 MiB |
显示代码纯文本
#include<fstream>
using namespace std;
int a[10000],b[10000],i,j,k,n,s;
void quicksort(int l,int r)
{
int i=l,j=r;
int x=b[(i+j)/2];
for (;i<=j;)
{
while ((b[i]<x)and(i<=r)) i++;
while ((b[j]>x)and(j>=l)) j--;
if (i<=j)
{
b[0]=b[i];
b[i]=b[j];
b[j]=b[0];
a[0]=a[i];
a[i]=a[j];
a[j]=a[0];
i++;
j--;
}
}
if (i<r) quicksort(i,r);
if (l<j) quicksort(l,j);
}
int main()
{
ifstream fin("toybrick.in");
ofstream fout("toybrick.out");
fin>>n>>s;
while (n!=0)
{
for (i=1;i<=n;i++)
{
fin>>a[i]>>b[i];
}
quicksort(1,n);
i=1;
while (s>=b[i])
{
s+=a[i];
i++;
}
if (i<=n) fout<<"NO"<<endl;
if (i>n) fout<<"YES"<<endl;
fin>>n>>s;
}
fout.close();
fin.close();
return 0;
}