Pagini recente » Cod sursa (job #3124279) | Cod sursa (job #2347546) | Cod sursa (job #368184) | Cod sursa (job #2852951) | Cod sursa (job #221365)
Cod sursa(job #221365)
#include <cstdio>
#define FIN "flip.in"
#define FOUT "flip.out"
#define N 20
int m,n,v[N][N],sum;
void read(){
int i,j;
freopen(FIN,"r",stdin);
scanf("%d%d",&n,&m);
for (i=0;i<n;++i)
for (j=0;j<m;++j)
{
scanf("%d",&v[i][j]);
sum+=v[i][j];
}
}
void matrice(int x)
{
int s=0,i,j,sumlin[N]={0};
for(i=0;i<n;++i)
for(j=0;j<m;++j)
if(x & (1<<j))//daca bitul j al lui x este 1 adun, altfel scad
sumlin[i]+=v[i][j];
else
sumlin[i]-=v[i][j];
for(i=0;i<n;++i)
s += (sumlin[i]>=0 ? sumlin[i] : -sumlin[i]);
if(s>sum)
sum=s;
}
void solve(){
int i;
for (i=0;i!=1<<m;++i)
matrice(i);
}
void write(){
freopen(FOUT,"w",stdout);
printf("%d\n",sum);
}
int main(){
read();
solve();
write();
}