Pagini recente » Cod sursa (job #361395) | Cod sursa (job #959671) | Cod sursa (job #2377362) | Cod sursa (job #523958) | Cod sursa (job #17351)
Cod sursa(job #17351)
#include <cstdio>
#include <cstdlib>
#include <math.h>
using namespace std;
int flip_col[17];
int tabla[17][17],n,m;
int gen_flip_col(int x) {
int k=1;
while (x) {
if(x%2==0) flip_col[k]=0;
else flip_col[k]=1;
k++;
x=x/2;
}
return 1;
}
int suma_linie(int x) {
int scc=0;
for (int i=1;i<=m;i++)
if (flip_col[i]==1) scc=scc-tabla[x][i];
else scc=scc+tabla[x][i];
return scc;
}
int main() {
int s=0,sc,sl=0;
freopen("flip.in","r",stdin);
scanf("%d %d",&n,&m);
for (int i=1;i<=n;i++)
for (int j=1;j<=m;j++)
scanf("%d",&tabla[i][j]);
for (int i=0;i<pow(2,m);i++) {
sc=0;
gen_flip_col(i);
for (int j=1;j<=n;j++) {
sl=suma_linie(j);
if (sl<0) sc=sc-sl;
else sc=sc+sl;
}
if (sc>s) s=sc;
}
freopen("flip.out","w",stdout);
printf("%d",s);
return 1;
}