比赛 20120309 评测结果 AWWWW
题目名称 积木分发 最终得分 20
用户昵称 11111111 运行时间 0.000 s
代码语言 Pascal 内存使用 0.00 MiB
提交时间 2012-03-09 20:55:01
显示代码纯文本
program aa;
var
l:array[1..10000,1..2] of integer;
a,b,c,biao,d,e,f,n,m,i,j,max,sum:integer;
f1,f2:text;
//******************************************
procedure sort(a,r: integer);
var
  i,j,x,y: integer;
begin
  i:=a; j:=r; x:=l[(a+r) DIV 2,2];
  repeat
    while l[i,2]<x do i:=i+1;
    while x<l[j,2] do j:=j-1;
    if i<=j then
    begin
      y:=l[i,1]; l[i,1]:=l[j,1]; l[j,1]:=y;
      y:=l[i,2]; l[i,2]:=l[j,2]; l[j,2]:=y;
      i:=i+1; j:=j-1;
    end;
  until i>j;
  if a<j then sort(a,j);
  if i<r then sort(i,r);
end;
//******************************************
begin
 assign(f1,'toybrick.in');
 assign(f2,'toybrick.out');
 reset(f1);
 rewrite(f2);
 biao:=1;
 while biao=1 do
 begin
  e:=0;
  readln(f1,n,sum);
  if (n=0) then
   break;
  for i:=1 to n do
   readln(f1,l[i,1],l[i,2]);
  sort(1,n);
  for i:=1 to n do
  if sum>=l[i,2] then
   sum:=l[i,1]+sum
  else
  begin
   e:=1;
   sum:=0;
   break;
  end;
  if e=1 then
  writeln(f2,'NO')
  else
  writeln(f2,'YES');
 end;
 close(f1);close(f2);
end.