Cod sursa(job #4626)

Utilizator nemesisIchim Alexandru Eugen nemesis Data 5 ianuarie 2007 20:36:30
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
// INFOARENA JOCUL FLIP 100pct



#include<stdio.h>
int n, a[17][17], m;

int solve()
{
  int max=0;
  for(int k=0; k< 1<<n; ++k) {
    int suma=0;   
    for(int i=1; i<=m; ++i) {
      int s=0;
      for(int j=1; j<=n; ++j) s+= (k& 1<<(j-1) ) ? a[j][i]*(-1) : a[j][i];
      suma+= (s > (-1)*s ) ? s : (-1)*s;      
    }
    if(suma > max) max=suma;
  }
  return max;
}

int main()
{
  FILE *f=fopen("flip.in","r");
  fscanf(f,"%d %d",&n,&m);
  for(int i=1; i<=n; ++i) for(int j=1; j<=m; ++j) fscanf(f,"%d",&a[i][j]);
  fclose(f);
  FILE *g=fopen("flip.out","w");
  fprintf(g,"%d\n",solve());

  fclose(g);
  return 0;
}