Cod sursa(job #774035)

Utilizator hiepsieunhanhiepsieunhan hiepsieunhan Data 3 august 2012 11:22:18
Problema Branza Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.06 kb
Const
        tfi     =       'branza.in';
        tfo     =       'branza.out';
type
        arr1    =       array[1..100000] of longint;
var
        fi,fo   :       text;
        n,s,t,f,r:      longint ;
        st,c,p  :       arr1 ;
        res     :       int64 ;
        i       :       longint;
BEGIN
        assign(fi,tfi);reset(fi);
        assign(fo,tfo);rewrite(fo);
                  Read(fi,n,s,t);
	          read(fi,c[1],p[1]);
                  for i:=2 to n do read(fi,c[i],p[i]);
                  f:=1;
                  r:=1;
                  st[1]:=1;
                  res:=c[1]*p[1];
                  for i:=2 to n do
                    begin
                           While (f<=r) and (i-st[f]>t) do inc(f);
                           while (f<=r) and (c[i]-s*i<c[st[r]]-s*st[r]) do dec(r);
                           inc(r);
                           st[r]:=i;
                           res:=res+p[i]*c[st[f]]+(i-st[f])*s*p[i];
                    end;
	          write(fo,res);
        close(fo);
        close(fi);
END.