Pagini recente » Cod sursa (job #800293) | Cod sursa (job #486665) | Cod sursa (job #504881) | Cod sursa (job #1067370) | Cod sursa (job #2254185)
#include <bits/stdc++.h>
using namespace std;
bool f[20];
int v[20][20],cv[20][20];
int n,m;
int smax()
{
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
cv[i][j]=v[i][j];
for(int i=1; i<=n; i++)
if(f[i])
{
for(int j=1; j<=m; j++)
cv[i][j]*=(-1);
}
int s=0;
for(int i=1; i<=m; i++)
{
int sp=0;
for(int j=1; j<=n; j++)
sp+=cv[j][i];
s+=max(sp,sp*(-1));
}
return s;
}
int main()
{
ifstream cin("flip.in");
ofstream cout("flip.out");
cin>>n>>m;
for(int i=1; i<=n; i++)
for(int j=1; j<=m; j++)
{
cin>>v[i][j];
}
int mx=0;
for(int i=0; i<(1<<n); i++)
{
int p=0,cn=i;
memset(f,0,sizeof(f));
while(cn)
{
p++;
f[p]=cn%2;
cn/=2;
}
mx=max(smax(),mx);
}
cout<<mx;
return 0;
}