记录编号 8263 评测结果 AAAAAAAAAA
题目名称 [BYVoid S3] 艾萨拉的激流 最终得分 100
用户昵称 Gravatarzhai 是否通过 通过
代码语言 Pascal 运行时间 5.672 s
提交时间 2008-11-13 13:46:34 内存使用 76.41 MiB
显示代码纯文本
program azshara;
  const
    max=-100000;
    maxl=10000;
    maxw=1000;
  type
    sz=array[1..maxl,1..maxw]of longint;
  var
    f1,f2:text;
    a,b:sz;
    l,w:integer;
    ans:longint;
    procedure ini;
      var
        i,j:integer;
      begin
        assign(f1,'azshara.in');reset(f1);
        assign(f2,'azshara.out');rewrite(f2);
        readln(f1,w,l);
        fillchar(a,sizeof(a),0);
        for i:=1 to l do
          for j:=1 to w do read(f1,a[i,j]);
        close(f1);
        for i:=1 to l do
          for j:=1 to w do begin
            b[i,j]:=0;
            if a[i,j]=-1 then a[i,j]:=max;
          end;
        for i:=1 to w do if a[j,i]<>-1 then b[1,i]:=a[1,i];
        ans:=0;
      end;
    procedure main;
      var
        i,j,k:integer;
      begin
        for i:=2 to l do
          for j:=1 to w do
            for k:=-1 to 1 do begin
              if (j+k>0)and(j+k<=w) then
              if b[i-1,j+k]+a[i,j]>b[i,j] then b[i,j]:=b[i-1,j+k]+a[i,j];
            end;
        for i:=1 to w do if b[l,i]>ans then ans:=b[l,i];
      end;
  begin
    ini;
    main;
    writeln(f2,ans);
    close(f2);
  end.