Pagini recente » Cod sursa (job #535136) | Cod sursa (job #734836) | Cod sursa (job #849707) | Cod sursa (job #1524899) | Cod sursa (job #3241347)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("flip.in");
ofstream fout("flip.out");
const int NMAX = 16;
int mat[NMAX+1][NMAX+1];
long long ans=LONG_MIN;
int main(){
int n, m;
fin>>n>>m;
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
fin>>mat[i][j];
}
}
int nr=(1 << n);
for(int i=1;i<nr;i++) {
vector<int> sc(m+1);
bitset<NMAX> x(i);
for(int lin=0;lin<n;lin++){
for(int col=0;col<m;col++){
if(x[lin]==1){
sc[col]+=mat[lin][col]*-1;
}else if(x[lin]==0){
sc[col]+=mat[lin][col];
}
}
}
long long cnt=0;
for(int col=0;col<m;col++){
if(sc[col]<0){
cnt+=sc[col]*-1;
}else{
cnt+=sc[col];
}
}
if(cnt>ans){
ans=cnt;
}
}
fout<<ans;
}