记录编号 12996 评测结果 AAAAAAAAAA
题目名称 [IOI 2002] 任务安排 最终得分 100
用户昵称 Gravatarybh 是否通过 通过
代码语言 Pascal 运行时间 0.169 s
提交时间 2009-09-24 20:50:12 内存使用 0.21 MiB
显示代码纯文本
program RenWuAnPai;
const
  maxn=5000;
var
  f:array[0..maxn] of int64;
  t,w:array[1..maxn] of integer;
  tt,ww:array[0..maxn] of longint;
  i,j,n,s:integer;
  w1,t1:longint;
  min:int64;
begin
  assign(input,'batch.in');
  reset(input);
  assign(output,'batch.out');
  rewrite(output);
  readln(n);
  readln(s);
  for i:=1 to n do
  begin
    readln(t[i],w[i]);
    tt[i]:=tt[i-1]+t[i];
    ww[i]:=ww[i-1]+w[i]
  end;
  for i:=1 to n do
  begin
    w1:=ww[i];
    t1:=tt[i];
    min:=f[0]+(s+t1)*w1+(s+t1)*(ww[n]-ww[i]);
    for j:=1 to i-1 do
    begin
      w1:=w1-w[j];
      t1:=t1-t[j];
      if min>f[j]+(s+t1)*w1+(s+t1)*(ww[n]-ww[i])
        then min:=f[j]+(s+t1)*w1+(s+t1)*(ww[n]-ww[i])
    end;
    f[i]:=min
  end;
  writeln(f[n]);
  close(input);
  close(output)
end.