Pagini recente » Cod sursa (job #1410363) | Cod sursa (job #2447927) | Cod sursa (job #1427589) | Cod sursa (job #2613187) | Cod sursa (job #3303924)
#include <fstream>
#include <algorithm>
#include <climits>
using namespace std;
ifstream cin("flip.in");
ofstream cout("flip.out");
const int NMAX=16;
int n, m, mat[NMAX+5][NMAX+5], aux[NMAX+5][NMAX+5];
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>mat[i][j];
}
}
int Max=INT_MIN;
for(int mask=1;mask<(1<<m);mask++){
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
aux[i][j]=mat[i][j];
}
}
for(int bit=0;bit<m;bit++){
if(mask&(1<<bit)){
for(int i=1;i<=n;i++){
aux[i][bit+1]=-aux[i][bit+1];
}
}
}
int tot=0;
for(int i=1;i<=n;i++){
int sum=0;
for(int j=1;j<=m;j++){
sum+=aux[i][j];
}
tot=tot+max(sum, -sum);
}
Max=max(Max, tot);
}
cout<<Max;
}