Cod sursa(job #878769)

Utilizator avramavram andrei marius avram Data 14 februarie 2013 18:55:40
Problema Jocul Flip Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.24 kb
#include<stdio.h>
int i,j,k,mat[50][50],n,m,pat[50][50],s,v[30],ss,nn,Max;
int main()
{
    freopen("flip.in","r",stdin);
    freopen("flip.out","w",stdout);
    scanf("%d%d",&n,&m);
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=m;j++)
        {
            scanf("%d",&mat[i][j]);
            pat[i][j]=mat[i][j];
        }
    }
    nn=n;
    while(v[1]==0)
    {
        nn=n;
        while(v[nn]==1)
        {
            v[nn]=0;
            nn--;
        }
        v[nn]=1;
        for(i=1;i<=n;i++)
        {
            if(v[i]==1)
            {
                for(j=1;j<=m;j++)
                {
                    pat[i][j]=0-mat[i][j];
                }
            }
        }
        for(i=1;i<=m;i++)
        {
            for(j=1;j<=n;j++)
            {
                ss=ss+pat[j][i];
            }
            if(ss>0)
                s=s+ss;
            else
            {
                ss=0-ss;
                s=s+ss;
            }
            ss=0;
        }
        ss=0;
        if(s>Max)
            Max=s;
        s=0;
        for(i=1;i<=n;i++)
        {
            for(j=1;j<=m;j++)
                pat[i][j]=mat[i][j];
        }
    }
    printf("%d",Max);
    return 0;
}