Cod sursa(job #67624)

Utilizator adalLica Adela adal Data 25 iunie 2007 12:48:54
Problema Branza Scor 0
Compilator fpc Status done
Runda preONI 2007, Runda Finala, Clasa a 10-a Marime 0.65 kb
program merge;
type rec=record
  s,d:longint;
end;
var f,g:text;
    i,j,n:longint;
    a:array[0..100000] of rec;
    b:array[0..100000] of qword;
    sum, min, t:qword;
begin

 assign(f,'branza.in'); reset(f);
 assign(g,'branza.out'); rewrite(g);
  readln(f,n,sum,t);
  for i:=1 to n do read(f,a[i].s,a[i].d);
  b[1]:=a[1].s*a[1].d;
  for i:=2 to n do begin
    min:=a[i].s*a[i].d; j:=i-1;
    while (min>(i-j)*sum)and(j>0)and((i-j)<=j*7) do begin
      if ((i-j)*sum*a[i].d+a[j].s*a[i].d)<min then min:=(i-j)*sum*a[i].d+a[j].s*a[i].d;
      dec(j);
    end;
    b[i]:=min+b[i-1];
  end;
  writeln(g,b[n]);
  close(g); close(f);
end.