Cod sursa(job #200848)

Utilizator antoanelaAntoanela Siminiuc antoanela Data 27 iulie 2008 00:33:02
Problema Bilute Scor 90
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.79 kb
var f,g:Text;
    a,b,v:array[0..30000]of longint;
    n,i,p:longint;
    s,s2,t,min:int64;
begin
assign(F,'bilute.in');
assign(g,'bilute.out');
reset(f);
rewrite(g);
read(f,n);
for i:=1 to n do
  begin
    read(f,a[i],b[i]);
    inc(s,a[i]);
  end;
s2:=s;
for i:=1 to n do
  inc(t,(n-i)*a[i]);
v[n]:=t-a[n]*b[n];
for i:=n-1 downto 2 do
  begin
    dec(s,a[i+1]);
    dec(t,s);
    v[i]:=t-a[i]*b[i];
  end;
t:=0;
for i:=1 to n do
  inc(t,(i-1)*a[i]);
v[1]:=t-a[1]*b[1];
for i:=2 to n-1 do
  begin
    dec(s2,a[i-1]);
    dec(t,s2);
    inc(v[i],t);
  end;
s:=0;
for i:=1 to n do
  inc(s,a[i]*b[i]);
min:=900000000000000000;
for i:=1 to n do
  if (s+v[i]<min)then
    begin
      min:=s+v[i];
      p:=i;
    end;
write(g,p,' ',min);
close(f);
close(g);
end.