Cod sursa(job #187910)

Utilizator dyzzy_dyzzyStanciulescu Daniel dyzzy_dyzzy Data 5 mai 2008 20:14:03
Problema Jocul Flip Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.42 kb
   1. var a,b,c:array[1..16,1..16] of longint;  
   2.     n,m,i,j,smax:longint;  
   3.     st:array[1..16] of -1..1;  
   4.     f,g:text;  
   5. procedure verif(k:integer);  
   6. var i,j,ss,s:longint;  
   7. begin  
   8.      for i:=1 to k do  
   9.           if st[i]=-1 then c[i]:=b[i]  
  10.                       else c[i]:=a[i];  
  11.      ss:=0;  
  12.      for j:=1 to m do  
  13.      begin  
  14.           s:=0;  
  15.           for i:=1 to n do s:=s+c[i,j];  
  16.           if s<0 then ss:=ss-s  
  17.                  else ss:=ss+s;  
  18.      end;  
  19.      if ss>smax then smax:=ss;  
  20. end;  
  21. procedure gen(k:integer);  
  22. begin  
  23.      if k=n+1 then verif(k-1)  
  24.               else  
  25.                begin  
  26.                     st[k]:=-1;  
  27.                     gen(k+1);  
  28.                     st[k]:=1;  
  29.                     gen(k+1);  
  30.                end;  
  31. end;  
  32. begin  
  33.      assign(f,'flip.in'); reset(f);  
  34.      assign(g,'flip.out'); rewrite(g);  
  35.      readln(f,n,m);  
  36.      for i:=1 to n do  
  37.           for j:=1 to m do  
  38.           begin  
  39.                read(f,a[i,j]);  
  40.                b[i,j]:=-a[i,j];  
  41.           end;  
  42.      smax:=-maxlongint;  
  43.      gen(1);  
  44.      writeln(g,smax);  
  45.      close(g);  
  46. end.