Pagini recente » Cod sursa (job #2339732) | Cod sursa (job #62698) | Cod sursa (job #2295332) | Cod sursa (job #1670417) | Cod sursa (job #3120916)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("flip.in");
ofstream fout ("flip.out");
const int Nmax = 16;
int n, m, mat[Nmax][Nmax], config[Nmax], sol;
void rec(int niv){
if (niv<n){
config[niv]=1;
rec(niv+1);
config[niv]=-1;
rec(niv+1);
}
else{
int sum0, sum1, sumt=0;
for (int j=0; j<m; j++){
sum0=sum1=0;
for (int i=0; i<n; i++){
sum0+=config[i]*mat[i][j];
sum1+=(0-config[i])*mat[i][j];
}
sumt+=max(sum0, sum1);
}
if (sumt>sol)
sol=sumt;
}
}
int main()
{
fin>>n>>m;
for (int i=0; i<n; i++)
for (int j=0; j<m; j++)
fin>>mat[i][j];
rec(0);
fout<<sol;
return 0;
}