Pagini recente » Cod sursa (job #1389524) | Cod sursa (job #2144643) | Cod sursa (job #798124) | Cod sursa (job #835095) | Cod sursa (job #895746)
Cod sursa(job #895746)
var i,p,n,m,d,o:int64;
x,y,b:longint;
a:array[0..2,0..10000]of longint;
f,g:text;
function min(x,y:int64):int64;
begin
min:=x;
if x>y then min:=y;
end;
function max(x,y:int64):int64;
begin
max:=x;
if x<y then max:=y;
end;
begin
assign(f,'magazin.in');reset(f);
assign(g,'magazin.out');rewrite(g);
readln(f,p,n,m,d);
i:=1;
while i<=p do begin readln(f,x,y);
inc(i);
a[1,x]:=max(a[1,x],(y));
a[2,x]:=max(a[2,x],(abs(y-m)+1));
end;
o:=0;
b:=1;
i:=1;
while i<=n do begin
if b=1 then begin
if m<(2*a[1,i]+d)then begin
o:=o+m;
b:=2;
end
else o:=o+m+d;
end
else begin
if m<(2*a[2,i]+d)then begin
o:=o+m;
b:=1;
end
else o:=o+m+d;
end;
inc(i);
end;
{writeln(n);
for i:=1 to n do write(a[i]:3);
writeln;
for i:=1 to n do write(b[i]:3);
writeln;}
writeln(g,o);
close(f);
close(g);
end.