Pagini recente » Cod sursa (job #157755) | Cod sursa (job #1952071) | Cod sursa (job #1094537) | Cod sursa (job #2471409) | Cod sursa (job #1788252)
#include<bits/stdc++.h>
int t[25][25], t1[25][25], c[25], smax = 0, s, sp, n, m;
void sim()
{
int i, j;
s=0;
for(i = 1; i<=n; i++)
for(j = 1; j<=m; j++) {
t1[i][j]=t[i][j];
if (c[j]) t1[i][j]*=(-1);
}
for(i = 1; i<=n; i++)
{
sp = 0;
for (j=1; j<=m; j++) sp+=t1[i][j];
sp=abs(sp);
s+=sp;
}
if (s > smax) smax = s;
}
void schura(int i){
if (i == m){
sim();
c[i]=1;
sim();
c[i]=0;
}
else {
schura(i+1);
c[i]=1;
schura(i+1);
c[i]=0;
}
}
int main(){
int i, j;
freopen("flip.in", "r", stdin);
freopen("flip.out", "w", stdout);
scanf("%d %d", &n, &m);
for (i = 1; i<=n; i++)
for(j = 1; j<=m; j++) scanf("%d", &t[i][j]);
schura(1);
printf("%d", smax);
return 0;
}