Pagini recente » Cod sursa (job #2873468) | Cod sursa (job #615650) | Cod sursa (job #1029865) | Borderou de evaluare (job #2783265) | Cod sursa (job #575367)
Cod sursa(job #575367)
var d,a:array[0..17,0..17]of longint;
aa:array[0..17] of 0..1;
i,s,max,j,n,k,m,s1,s2,cont,nr:longint;
t:text;
procedure baza(x:longint);
var i:longint;
begin
for i:=1 to m do begin d[i,cont]:=-a[i,cont]; aa[i]:=0; end;
cont:=0;
while x<>0 do begin
inc(cont);
aa[cont]:=x mod 2;
x:=x shr 1;
if aa[cont]=0 then for i:=1 to n do d[i,cont]:=-a[i,cont];
if aa[cont]=1 then for i:=1 to n do d[i,cont]:=a[i,cont];
end;
s:=0;
for i:=1 to n do begin
s1:=0;
s2:=0;
for j:=1 to n do begin
s1:=s1+d[i,j];
s2:=s2-d[i,j];
end;
if s1<s2 then s:=s+s2 else s:=s+s1;
end;
if s>max then max:=s;
end;
begin
assign(t,'flip.in'); reset(t);
readln(t,n,m);
nr:=1;
for i:=1 to n do begin
for j:=1 to m do begin nr:=nr*2; read(t,a[i,j]); end;
readln(t);
end;
nr:=nr shr 1;
nr:=nr-1;
for i:=0 to nr do baza(i);
close(t);
assign(t,'flip.out'); rewrite(t);
writeln(t,max);
close(t);
end.