Cod sursa(job #1587800)

Utilizator dragos99Homner Dragos dragos99 Data 2 februarie 2016 16:44:54
Problema Jocul Flip Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.88 kb
#include<fstream>
using namespace std;
long lin[20],col[20],v[20][20],n,m,s,smax,k,i,j;
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>>v[i][j];
        s+=v[i][j];}
smax=s;
while(lin[n+1]==0)
{
    while(col[m+1]==0){
    k=1; s=0;
    col[k]++;
    while(col[k]>1)
    {
        col[k]=0;
        k++;
        col[k]++;
    }
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
            {
            if(col[j]==1 && lin[i]==0 || col[j]==0 && lin[i]==1)
                s-=v[i][j];
            if(col[j]==0 && lin[i]==0 || col[j]==1 && lin[i]==1)
                s+=v[i][j];
            }
    if(s>smax)
        smax=s;
    }
    col[m+1]=0;
    k=1;
    lin[k]++;
    while(lin[k]>1)
    {
        lin[k]=0;
        k++;
        lin[k]++;
    }
}
g<<smax;
return 0;
}