Pagini recente » Cod sursa (job #424455) | Cod sursa (job #309986) | Cod sursa (job #2211895) | Cod sursa (job #1464887) | Cod sursa (job #359234)
Cod sursa(job #359234)
#include<stdio.h>
int n,m,suma,k=1,p,max=0;
int x[17];
int a[17][17];
void b();
void bkt(int);
int main()
{
freopen ("flip.in","r",stdin);
freopen("flip.out","w",stdout);
scanf("%d%d",&m,&n);
for(int i=1;i<=m;i++)
{
for(int j=1;j<=n;j++)
{
scanf("%d",&a[i][j]);
}
}
bkt(1);
printf("%d",max);
return 0;
}
void bkt(int p)
{
if(p==m)
{
b();
return;
}
x[p]=1;
bkt(p+1);
x[p]=-1;
bkt(p+1);
}
void b()
{
for(int i=1;i<=m;i++)
{
if(x[i]==1){
for(int j=1;j<=n;j++)
{
suma+=a[i][j];
}
}
else
{
for(int j=1;j<=n;j++)
{
suma+=a[i][j]*-1;
}
}
}
if(suma>max)
max=suma;
}
/*if(p==k){
if(suma>max)
max=suma;
return;
}
for(int i=1;i<=n+m;i++)
{
for(int j=-1;j<=1;j=1)
{
if(i<=n)
{
a[i][0]=j;
bkt(p+1);
a[i][0]-=j;
}
else
{
a[0][i-n]=j;
bkt(p+1);
a[0][i-n]-=j;
}
}
}
}*/
/*int s;
for(int i=1;i<=n;i++)
{
s=0;
for(int j=1;j<=m;j++)
{
s+=a[i][j];
}
if(s<0)
{
for(int j=1;j<=m;j++)
{
a[i][j]*=-1;
}
}
}
for(int i=1;i<=m;i++)
{
s=0;
for(int j=1;j<=n;j++)
{
s+=a[j][i];
}
if(s<0)
{
for(int j=1;j<=n;j++)
{
a[j][i]*=-1;
}
}
}
//suma=0;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
suma+=a[i][j];
printf("%d",suma);
return 0;
}
*/