Pagini recente » Cod sursa (job #2852999) | Cod sursa (job #2397939) | Cod sursa (job #1452228) | Cod sursa (job #2852103) | Cod sursa (job #2423141)
#include <iostream>
#include <cstdio>
using namespace std;
int cmax;
int n,i,j,m,v[17][17],s[17],ans;
void r(int k)
{
if (k == n+1)
{
int tempans = 0;
for (int i = 1; i <= m; ++i)
tempans += s[i] > 0 ? s[i] : -s[i];
ans = max(ans, tempans);
return;
}
r(k+1);
for (int i = 1; i <= m; ++i)
{
s[i]-=2*v[k][i];
}
r(k+1);
for (int i = 1; i <= m; ++i)
{
s[i]+=2*v[k][i];
}
}
int main()
{
FILE *in,*out;
in=fopen("flip.in","r");
out=fopen("flip.out","w");
fscanf(in,"%d %d",&n,&m);
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
fscanf(in,"%d ",&v[i][j]);
s[j]+=v[i][j];
}
}
r(1);
fprintf(out,"%d",ans);
return 0;
}