记录编号 118673 评测结果 AAAAAAAAAA
题目名称 [湖北2011寒假] 未名湖钓鱼 最终得分 100
用户昵称 GravatarFoolMike 是否通过 通过
代码语言 Pascal 运行时间 0.020 s
提交时间 2014-09-08 18:32:45 内存使用 0.18 MiB
显示代码纯文本
var
a,b,d,d1,e,n,m,t,k,ans:longint;
s,c:array[1..5001]of integer;

  procedure kuaipai(l,r:longint);
  var
  i,j,x,y:longint;
  begin
  i:=l;j:=r;x:=s[(i+j)div 2];
  repeat
  while s[i]>x do inc(i);
  while s[j]<x do dec(j);
  if i<=j then
    begin
    y:=s[i];s[i]:=s[j];s[j]:=y;
    y:=c[i];c[i]:=c[j];c[j]:=y;
    inc(i);dec(j);
    end;
  until i>j;
  if i<r then kuaipai(i,r);
  if j>l then kuaipai(l,j);
  end;

begin
assign(input,'fisha.in');
assign(output,'fisha.out');
reset(input);
rewrite(output);

read(n,m,t,k);
for n:=1 to n do
read(s[n],c[n]);

m:=m-t*(n-1)-1;
kuaipai(1,n);

for b:=1 to m div k do
  begin
  ans:=ans+s[1];
  if s[1]>c[1] then s[1]:=s[1]-c[1] else s[1]:=0;
  d:=s[1];d1:=c[1];
  a:=1;
  while d<s[a+1] do inc(a);
  for e:=1 to a-1 do
    begin
    s[e]:=s[e+1];
    c[e]:=c[e+1];
    end;
  s[a]:=d;c[a]:=d1;
  end;

writeln(ans);
close(input);close(output);
end.