Cod sursa(job #209714)

Utilizator ssergiussSergiu-Ioan Ungur ssergiuss Data 24 septembrie 2008 13:21:26
Problema Jocul Flip Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include<stdio.h>
int n,m,a[101][101],sol[101],max;
void calcul(){
    int i,j,s=0,sj;
    for(j=1; j<=m; ++j){
        sj=0;
        for(i=1; i<=n; ++i)
            sj+=a[i][j]*sol[i];
        if(sj>0)
            s+=sj;
        else
            s+=-sj;}
    if(s>max)
        max=s;}
void back(int k){
    if(k==n+1)
        calcul();
    else
        for(int val=-1; val<=1; val+=2){
            sol[k]=val;
            back(k+1);}}
int main(){
    freopen("flip.in","r",stdin);
    freopen("flip.out","w",stdout);
    int i,j;
    scanf("%d%d",&n,&m);
    for(i=1; i<=n; ++i)
        for(j=1; j<=m; ++j){
            scanf("%d",&a[i][j]);
            max+=a[i][j];}
    back(1);
    printf("%d",max);
    return 0;}