Cod sursa(job #1041513)

Utilizator ValeraShulghin Valera Valera Data 25 noiembrie 2013 21:37:42
Problema Jocul Flip Scor 40
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.85 kb
var a:array[1..16,1..16] of longint;
    row,col:array[1..16] of longint;
    i,j,n,m,sum,max,k:longint;
    f,g:text;

procedure suma;
  begin
    sum:=0;
    for i:=1 to m do
      col[i]:=0;
    for i:=1 to n do
      for j:=1 to m do
        begin
          a[i,j]:=a[i,j]*row[i];
          col[j]:=col[j]+a[i,j];
        end;
    for i:=1 to m do
      if col[i]>0 then sum:=sum+col[i] else sum:=sum-col[i];
    if sum>max then max:=sum;
  end;

procedure back(k:integer);
  begin
    if k=n+1 then suma
      else begin
        row[k]:=1; back(k+1);
        row[k]:=-1;back(k+1);
      end;
  end;


begin
assign(f,'flip.in');reset(f);
assign(g,'flip.out');rewrite(g);
readln(f,n,m);
for i:=1 to n do
  begin
    for j:=1 to m do
      read(f,a[i,j]);
    readln(f);
  end;
back(1);
writeln(g,max);
close(f);close(g);
end.