Pagini recente » Cod sursa (job #616106) | Cod sursa (job #835644) | Cod sursa (job #214083) | Cod sursa (job #1787256) | Cod sursa (job #67754)
Cod sursa(job #67754)
program branza;
const Nmax=100000;
var n,t,s,i,st,dr:longint;
c,p,l:array[1..Nmax]of longint;
f:text;
min:int64;
begin
assign(f,'branza.in');reset(f);
readln(f,n,s,t);
for i:=1 to n do
readln(f,c[i],p[i]);
min:=c[1]*p[1];
st:=1;
dr:=1;
l[1]:=1;
for i:=2 to n do begin
while l[st]<i-t do inc(st);
while (dr>=st)and(c[i]<c[l[dr]]+s*(i-l[dr])) do dec(dr);
inc(dr);
l[dr]:=i;
min:=min+(c[l[st]]+s*(i-l[st]))*p[i];
end;
assign(f,'branza.out');rewrite(f);
write(f,min);
close(f);
end.