Cod sursa(job #344853)

Utilizator energizerBunnyCicu Mihai energizerBunny Data 31 august 2009 19:50:50
Problema Jocul Flip Scor 30
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.94 kb
Program pascal;
Type
 mat = array[1..16,1..16] of -1000000..1000000;
var
 a: mat;
 f: text;
 m,n,i,j,k:1..16;
 spoz,sneg,s:longint;
Begin
  assign(f,'flip.in');
  reset(f);
  read(f,n);
  read(f,m);
  for i:= 1 to n do
   for j:= 1 to m do
    read(f,a[i,j]);
  close(f);
  
  for j:= 1 to m do Begin
    spoz:=0;
    sneg:=0;
    for i:= 1 to n do
     if a[i,j] > 0 then
       spoz := spoz + a[i,j]
     else sneg := sneg +a[i,j];
    if (sneg*(-1) >= spoz) then
     for k:= 1 to n do
       a[k,j]:=a[k,j] * (-1);
  End;
  
  for i:= 1 to n do Begin
    spoz := 0;
    sneg := 0;
    for j:= 1 to m do
     if a[i,j] > 0 then
      spoz := spoz + a[i,j]
     else sneg:= sneg + a[i,j];
    if (sneg*(-1) >= spoz) then
     for k:= 1 to m do
      a[i,k] := a[i,k] * (-1);
  End;
  
  for i:= 1 to n do
   for j:= 1 to m do
    s := s + a[i,j];
  assign(f,'flip.out');
  rewrite(f);
  write(f,s);
  close(f);
END.