Pagini recente » Cod sursa (job #914844) | Cod sursa (job #1320479) | Cod sursa (job #133970) | Cod sursa (job #1622487) | Cod sursa (job #197850)
Cod sursa(job #197850)
var a : array[0..20,0..20] of longint;
use : array[0..20] of integer;
sol : array[0..20] of longint;
i,j,n,m : longint;
max : int64;
f,g : text;
procedure vezi(k : integer);
var i : integer;
sum,tot : int64;
begin
tot:=0;
for i:=1 to n do
if use[i]=1 then
for j:=1 to m do
a[i,j]:=-a[i,j];
for j:=1 to m do
begin
sum:=0;
for i:=1 to n do
sum:=sum+a[i,j];
if sum>-sum then tot:=tot+sum
else tot:=tot-sum;
end;
if tot>max then max:=tot;
end;
procedure back(k : integer);
var i : integer;
begin
for i:=sol[k-1]+1 to n do
begin
sol[k]:=i;
use[k]:=1;
vezi(k);
back(k+1);
use[k]:=0;
end;
end;
begin
assign(f,'flip.in');reset(f);
assign(g,'flip.out');rewrite(g);
read(f,n,m); max:=-100000000000000;
for i:=1 to n do
for j:=1 to m do
read(f,a[i,j]);
back(1);
writeln(g,max);
close(g);
end.