Cod sursa(job #629166)
| Utilizator | Data | 2 noiembrie 2011 19:11:49 | |
|---|---|---|---|
| Problema | Gutui | Scor | 10 |
| Compilator | fpc | Status | done |
| Runda | gc_practice | Marime | 0.67 kb |
Program gutui;
var a,b,n,h,u,aux,i,sum,j,b1:longint;
s:array [0..100000] of longint;
fi,fo:text;
begin
assign(fi,'gutui.in');
assign(fo,'gutui.out');
reset(fi); rewrite(fo);
readln(fi,n,h,u);
aux:=trunc(h/u)+1;
for i:=1 to n do begin
readln(fi,a,b);
j:=trunc((h-a)/(u));
while j>0 do begin
if s[j]=0 then begin s[j]:=b; sum:=sum+b; dec(j); end
else if s[j]<b then begin b1:=s[j]; s[j]:=b; b:=b1; sum:=sum+s[j]-b; end;
dec(j);
end;
end;
write(fo,sum);
close(fo);
end.