Pagini recente » Cod sursa (job #2027166) | Monitorul de evaluare | Cod sursa (job #687529) | Cod sursa (job #1022045) | Cod sursa (job #525524)
Cod sursa(job #525524)
#include<stdio.h>
bool sol[100];
int n , max=-1, a [18][18] , m;
void prel()
{
int i , j , suma , st= 0;
for(i=1;i<=n;i++)
{
suma=0;
for(j=1;j<=m;j++)
if(sol[j]==true)
suma+=a[i][j]*-1;
else
suma+=a[i][j];
if(suma<0)
st=st+(suma)*-1;
else
st+=suma;
}
if(st>max)
max=st;
}
void bkt(int p)
{
if(p==m+1)
{
prel();
return;
}
sol[p]=false;
bkt(p+1);
sol[p]=true;
bkt(p+1);
}
int main()
{
int i , j ;
freopen("flip.in","r",stdin);
freopen("flip.out","w",stdout);
scanf("%ld%ld",&n,&m);
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
scanf("%ld",&a[i][j]);
bkt(1);
printf("%ld",max);
return 0;
}