Cod sursa(job #1428915)

Utilizator costi2Radu Canu costi2 Data 5 mai 2015 12:17:09
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <fstream>
#include <iostream>

using namespace std;


#define Nmax 17
#define FOR(i,a,b) for(i=a;i<=b;i++)
int semn[Nmax];
int a[Nmax][Nmax],m , n ,total=0;

void bkt(int k)
{
    int Sum1,Sum2=0;
    int j , i;
    if(k == n+1)
    {
        FOR( i, 1, m)
        {
            Sum1=0;
            FOR( j,1,n)
                Sum1=Sum1 + a[i][j]*semn[j];


                //Sumcol=Sumcol + semn[j]?a[i][j]:-a[i][j];

            Sum2=Sum2+max(Sum1,-Sum1);
        }
        total=max(total,Sum2);
        return;
    }
    semn[k]=1;
    bkt(k+1);
    semn[k]=-1;
    bkt(k+1);

}
int main()
{
  ifstream f("flip.in");
  ofstream g("flip.out");
  int j ,i;
  f>>m>>n;
  FOR(i,1,m)
  {
      FOR(j,1,n)
      {
          f>>a[i][j];
      }
  }
  bkt(1);
  g<<total;
    return 0;
}