Cod sursa(job #1630072)

Utilizator Bodo171Bogdan Pop Bodo171 Data 4 martie 2016 21:49:28
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include<fstream>
using namespace std;
int a[17][17],v[17],sum,bestsum,i,j,k,n,m;

int main()
{
   ifstream f("flip.in");
   ofstream g("flip.out");
   f>>n>>m;
   for(i=1;i<=n;i++)
    {for(j=1;j<=m;j++) f>>a[i][j];}
   for(i=1;i<=(1<<n)-1;i++)
   {
       sum=0;for(k=1;k<=m;k++) v[k]=0;
       for(j=1;j<=n;j++)
       {
           if(i&(1<<(j-1))) for(k=1;k<=m;k++) {v[k]-=a[j][k];}
           else for(k=1;k<=m;k++) {v[k]+=a[j][k];}

       }
       for(k=1;k<=m;k++)
       {
           if(v[k]<0) sum-=v[k];
           else sum+=v[k];
       }
       if(sum>bestsum) bestsum=sum;

   }
   sum=0;
   for(k=1;k<=m;k++) v[k]=0;
   for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
    {
        v[j]+=a[i][j];
    }
     for(k=1;k<=m;k++)
       {
           if(v[m]<0) sum-=v[k];
           else sum+=v[k];
       }
       if(sum>bestsum) bestsum=sum;
   g<<bestsum;
    return 0;
}