Cod sursa(job #919519)

Utilizator StefanCatalinaStefan Catalina StefanCatalina Data 19 martie 2013 18:27:02
Problema Jocul Flip Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.26 kb
program flip;
type mat=array[1..16,1..16] of longint;
var a,b:mat;
    sl,sc,n,m,s1,s2,s3,s4,i,j:longint;
    f,g:text;
procedure coloana(var a:mat; var s1:longint);
begin
s1:=0;
for j:=1 to m do begin
                 sc:=0;
                 for i:=1 to n do
                 sc:=sc+a[i,j];
                 if sc>-sc then inc(s1,sc) else begin
                                                inc(s1,-sc);
                                                for i:=1 to n do a[i,j]:=-a[i,j];
                                                end;
                 end;
end;
procedure linie(var a:mat; var s2:longint);
begin
s2:=0;
for i:=1 to n do begin
                 sl:=0;
                 for j:=1 to m do
                 inc(sl,a[i,j]);
if sl>-sl then inc(s2,sl) else begin
                              inc(s2,sl);
                              for j:=1 to m do a[i,j]:=-a[i,j];
                              end;
                  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;
b:=a;
coloana(a,s1);
linie(a,s2);
linie(b,s3);
coloana(b,s4);
if s2>s4 then write(g,s2) else write(g,s4);
writeln(g,s2);
close(f);close(g);
end.