Cod sursa(job #1981482)

Utilizator NToniBoSSNicolae Tonitza NToniBoSS Data 15 mai 2017 20:24:05
Problema Jocul Flip Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <stdio.h>
#include <stdlib.h>
int n,m,max,a[17][17],v[17],s[17][17];
void bkt(int ct)
{
    if(ct>m)
    {
        int i,j,suma,sum;
        for(i=1; i<=n; i++)
            for(j=1; j<=m; j++)
                s[i][j]=v[j];
        suma=0;
        for(i=1; i<=n; i++)
        {
            sum=0;
            for(j=1; j<=m; j++)
                sum+=a[i][j]*s[i][j];
            suma+=abs(sum);
        }
        if(suma>max)
            max=suma;
    }
    else
        for(v[ct]=-1; v[ct]<=1; v[ct]+=2)
            bkt(ct+1);
}
int main()
{
    int i,j;
    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",&a[i][j]);
    bkt(1);
    printf("%d\n",max);

    return 0;
}