Cod sursa(job #544918)

Utilizator RainDropsMDMinzelevschi Igori RainDropsMD Data 2 martie 2011 13:37:06
Problema Jocul Flip Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.15 kb
var mat:array[1..16,1..16] of longint;
    tab:array[1..16] of longint;
    n,m,i,j:1..16;
    max:int64;

    
    Procedure Cit;
     var f:text;
     begin
      assign(f,'flip.in');
      reset(f);
       readln(f,n,m);
       for i:=1 to n do begin
        for j:= 1 to m do
        read(f,mat[i,j]);
        readln(f);
       end;
      close(f);
      max:=0;
     end;
     
     Procedure Int(a:int64);
      var f:text;
      begin
       assign(f,'flip.out');
       rewrite(f);
       write(f,a);
       close(f);
      end;
      
     procedure Calc;
      var i,j,h:integer;
          sum,fin:int64;
       begin
        fin:=0;
        for i:=1 to n do
         begin
          sum:=0;
          for j:=1 to m do sum:=sum+mat[i,j]*tab[j];
          fin:=fin+abs(sum);
         end;
        if fin>max then max:=fin;
       end;
      
     procedure inv(k:byte);
      begin
       if k>m then calc
              else begin
                    tab[k]:=-1; inv(k+1);
                    tab[k]:=1;  inv(k+1);
                   end;
     end;
    
    Begin
     Cit;
     Inv(1);
     Int(max);
    End.