Cod sursa(job #129217)

Utilizator free2infiltrateNezbeda Harald free2infiltrate Data 28 ianuarie 2008 19:38:06
Problema Jocul Flip Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.88 kb
program flip;
type vect = array [1..32] of shortint;
     matt = array [1..16,1..16] of longint;
var B : vect;
    A : matt;
    n,m,i,j:integer;
    S : longint;
    f : text;
procedure flip(X: matt);
var k,l : integer;
    r : longint;
begin
r := 0;
k := 0;
l := 0;
repeat
k := k+1;
l := l+1;

for i := 1 to n do
X[k,i] := X[k,i]*B[l];
until k=m;

for i := 1 to n do
for j := 1 to m do
r := r+X[i,j];

if r>S then S := r;

end;

procedure back(p:integer);
var pval : integer;
begin
for pval := 0 to 1 do begin
if pval = 0 then B[p] := 1
            else B[p] := -1;
if p=m then flip(A)
         else back(p+1);
end;
end;

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,A[i,j]);
readln(f);
end;
close(f);

back(1);

assign(f,'flip.out');
rewrite(f);

write(f,S);

close(f);


end.