Pagini recente » Cod sursa (job #963802) | Cod sursa (job #2058556) | Cod sursa (job #2110547) | Cod sursa (job #2471367) | Cod sursa (job #895636)
Cod sursa(job #895636)
var i,p,n,m,d,o:longint;
x,y,b:longint;
a:array[0..2,0..1000]of integer;
f,g:text;
function min(x,y:integer):integer;
begin
min:=x;
if x>y then min:=y;
end;
function max(x,y:integer):integer;
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;
for i:=1 to n do begin
if b=1 then begin
if m<(2*a[2,i]+d)then begin
o:=o+m;
b:=2;
end
else o:=o+m+d;
end
else begin
if m<(2*a[1,i]+d)then begin
o:=o+m;
b:=1;
end
else o:=o+m+d;
end;
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.