Pagini recente » Cod sursa (job #2699404) | Cod sursa (job #2980137) | Cod sursa (job #2539706) | Cod sursa (job #1231867) | Cod sursa (job #1009823)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("flip.in");
ofstream out("flip.out");
int matrix[17][17],sign[17];;
int n,m,sMax=0;
void read()
{
in>>n>>m;
for(int i=1; i<=n ; i++)
{
for(int j=1 ; j<=m ; j++)
{
in>>matrix[i][j];
sMax+=matrix[i][j];
}
}
}
void bkt(int k)
{
if(k<=m)
{
sign[k]=1;
bkt(k+1);
sign[k]=-1;
bkt(k+1);
}
else
{
int smatrix = 0;
for(int i = 0; i<=n ; i++)
{
int sLine=0;
for(int j = 1 ; j<=m ; j++)
{
sLine=sLine+matrix[i][j]*sign[j];
}
if(sLine<0)
{
sLine*=(-1);
}
smatrix+=sLine;
}
if(smatrix>sMax)
{
sMax=smatrix;
}
}
}
void write()
{
out<<sMax;
}
int main()
{
read();
bkt(1);
write();
}