Cod sursa(job #1404532)

Utilizator stefzahZaharia Stefan Tudor stefzah Data 28 martie 2015 12:30:03
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <cstdio>
using namespace std;
int n,v[34],k,i,b[17],a[17],p,mat[17][17],j,m;
long long smax,s;
int main()
{freopen("flip.in","r",stdin);
 freopen("flip.out","w",stdout);
 scanf("%d%d",&n,&m);
 smax=-1000000000000000000;
 for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
       scanf("%d",&mat[i][j]);
 k=n;
 while(k!=0)
      {k=n+m;
       for(i=1;i<=m+n;i++)
          {if(v[i]==0){v[i]=1;if(i<=n)a[i]=v[i];else b[i-n]=v[i];break;}
           if(v[i]==1){v[i]=0;if(i<=n)a[i]=v[i];else b[i-n]=v[i];}
          }
        s=0;
       for(i=1;i<=n;i++)
          for(j=1;j<=m;j++)
             {p=0;
              p=p+a[i]+b[j];
              if(p%2==0) s=s+mat[i][j];
                else s=s-mat[i][j];
             }
       if(s>smax) smax=s;
       for(i=1;i<=n+m;i++)
          if(v[i]==1) k--;
      }
 printf("%d",smax);
}