Cod sursa(job #2495121)

Utilizator eugen5092eugen barbulescu eugen5092 Data 18 noiembrie 2019 21:46:10
Problema Jocul Flip Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <bits/stdc++.h>
using namespace std;
ifstream ci("flip.in");
ofstream cou("flip.out");
int n,m,sol[20],mx,sol1[20],mxf,v[20][29] ;




void rezv(){
   // Back1(1);
int i,j,mxl=0,pr;
/*
for(int k=1;k<=n;k++){
    cout<<sol[k]<<" ";
}

cout<<"\n";
for(int k=1;k<=m;k++){
    cout<<sol1[k]<<" ";
}
*/
mx=0;

for(i=1;i<=n;i++ ){

    for(j=1;j<=m;j++){
            pr=v[i][j];
        if(sol[i]==1 ){
            pr*=-1;
        }
        if(sol1[j]==1 ){
            pr*=-1;
        }
    mx+=pr;
    }

}


//cout<<"\n";
//cout<<mx<<"\n\n\n\n\n";
 mxf=max(mxf,mx);

}

void Back1(int top){
if(top==m+1 ){rezv(); }else{
    for(int i=0;i<=1;i++){
        sol1[top]=i;
        Back1(top+1);

    }
}
}


void Back(int top){
if(top==n+1 ){Back1(1); }else{
    for(int i=0;i<=1;i++){
        sol[top]=i;
        Back(top+1);

    }

}


}


int main()
{
    ci>>n>>m;
    int i,j;
    for(i=1;i<=n;i++){
        for(j=1;j<=m;j++){
            ci>>v[i][j];
        }
    }
    Back(1);
    cou<<mxf;

}